diff options
Diffstat (limited to 'bitbake/lib/bb/parse/parse_py')
-rw-r--r-- | bitbake/lib/bb/parse/parse_py/BBHandler.py | 4 | ||||
-rw-r--r-- | bitbake/lib/bb/parse/parse_py/ConfHandler.py | 9 |
2 files changed, 9 insertions, 4 deletions
diff --git a/bitbake/lib/bb/parse/parse_py/BBHandler.py b/bitbake/lib/bb/parse/parse_py/BBHandler.py index ee9bd760ce..68415735fd 100644 --- a/bitbake/lib/bb/parse/parse_py/BBHandler.py +++ b/bitbake/lib/bb/parse/parse_py/BBHandler.py | |||
@@ -178,10 +178,10 @@ def feeder(lineno, s, fn, root, statements, eof=False): | |||
178 | 178 | ||
179 | if s and s[0] == '#': | 179 | if s and s[0] == '#': |
180 | if len(__residue__) != 0 and __residue__[0][0] != "#": | 180 | if len(__residue__) != 0 and __residue__[0][0] != "#": |
181 | bb.fatal("There is a comment on line %s of file %s (%s) which is in the middle of a multiline expression.\nBitbake used to ignore these but no longer does so, please fix your metadata as errors are likely as a result of this change." % (lineno, fn, s)) | 181 | bb.fatal("There is a comment on line %s of file %s:\n'''\n%s\n'''\nwhich is in the middle of a multiline expression. This syntax is invalid, please correct it." % (lineno, fn, s)) |
182 | 182 | ||
183 | if len(__residue__) != 0 and __residue__[0][0] == "#" and (not s or s[0] != "#"): | 183 | if len(__residue__) != 0 and __residue__[0][0] == "#" and (not s or s[0] != "#"): |
184 | bb.fatal("There is a confusing multiline, partially commented expression on line %s of file %s (%s).\nPlease clarify whether this is all a comment or should be parsed." % (lineno, fn, s)) | 184 | bb.fatal("There is a confusing multiline partially commented expression on line %s of file %s:\n%s\nPlease clarify whether this is all a comment or should be parsed." % (lineno - len(__residue__), fn, "\n".join(__residue__))) |
185 | 185 | ||
186 | if s and s[-1] == '\\': | 186 | if s and s[-1] == '\\': |
187 | __residue__.append(s[:-1]) | 187 | __residue__.append(s[:-1]) |
diff --git a/bitbake/lib/bb/parse/parse_py/ConfHandler.py b/bitbake/lib/bb/parse/parse_py/ConfHandler.py index 810b6011cf..451e68dd66 100644 --- a/bitbake/lib/bb/parse/parse_py/ConfHandler.py +++ b/bitbake/lib/bb/parse/parse_py/ConfHandler.py | |||
@@ -125,16 +125,21 @@ def handle(fn, data, include): | |||
125 | s = f.readline() | 125 | s = f.readline() |
126 | if not s: | 126 | if not s: |
127 | break | 127 | break |
128 | origlineno = lineno | ||
129 | origline = s | ||
128 | w = s.strip() | 130 | w = s.strip() |
129 | # skip empty lines | 131 | # skip empty lines |
130 | if not w: | 132 | if not w: |
131 | continue | 133 | continue |
132 | s = s.rstrip() | 134 | s = s.rstrip() |
133 | while s[-1] == '\\': | 135 | while s[-1] == '\\': |
134 | s2 = f.readline().rstrip() | 136 | line = f.readline() |
137 | origline += line | ||
138 | s2 = line.rstrip() | ||
135 | lineno = lineno + 1 | 139 | lineno = lineno + 1 |
136 | if (not s2 or s2 and s2[0] != "#") and s[0] == "#" : | 140 | if (not s2 or s2 and s2[0] != "#") and s[0] == "#" : |
137 | bb.fatal("There is a confusing multiline, partially commented expression on line %s of file %s (%s).\nPlease clarify whether this is all a comment or should be parsed." % (lineno, fn, s)) | 141 | bb.fatal("There is a confusing multiline, partially commented expression starting on line %s of file %s:\n%s\nPlease clarify whether this is all a comment or should be parsed." % (origlineno, fn, origline)) |
142 | |||
138 | s = s[:-1] + s2 | 143 | s = s[:-1] + s2 |
139 | # skip comments | 144 | # skip comments |
140 | if s[0] == '#': | 145 | if s[0] == '#': |