mirror of
https://github.com/dgibson/dtc.git
synced 2025-10-13 16:27:39 -04:00
Fix an off-by-2 error in the source output code
This has been there for ages, but the assertion makes no sense in the context of the test immediately preceding it. This caused an abort() when in -I dts -O dts mode with the right sort of internal labels in a string property value. Add a testcase for this and another candidate edge case (though this one we already get right). Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
76a65b14d1
commit
fa928fba7e
3 changed files with 19 additions and 1 deletions
|
@ -109,7 +109,7 @@ static void write_propval_string(FILE *f, struct data val)
|
|||
break;
|
||||
case '\0':
|
||||
fprintf(f, "\", ");
|
||||
while (m && (m->offset < i)) {
|
||||
while (m && (m->offset <= (i + 1))) {
|
||||
if (m->type == LABEL) {
|
||||
assert(m->offset == (i+1));
|
||||
fprintf(f, "%s: ", m->ref);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue