From a5358511b1741e6abff1a8f5136f1c8662645fea Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Mon, 21 Jan 2013 11:00:52 +0000 Subject: bitbake: BBHandler/ConfHandler: Merge fix for multiline comments This was meant to be squashed into the previous commit for multiline comment handling. It fixes the case the commented multiline is followed by an empty line which was resulting in a traceback instead of a sane error message. (Bitbake rev: 7e7d692e244fe8dca533f842ca143b9c821e317c) Signed-off-by: Richard Purdie --- bitbake/lib/bb/parse/parse_py/BBHandler.py | 2 +- bitbake/lib/bb/parse/parse_py/ConfHandler.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/bitbake/lib/bb/parse/parse_py/BBHandler.py b/bitbake/lib/bb/parse/parse_py/BBHandler.py index 88ad03960a..81fb8d3adf 100644 --- a/bitbake/lib/bb/parse/parse_py/BBHandler.py +++ b/bitbake/lib/bb/parse/parse_py/BBHandler.py @@ -202,7 +202,7 @@ def feeder(lineno, s, fn, root, statements): if len(__residue__) != 0 and __residue__[0][0] != "#": 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)) - if len(__residue__) != 0 and __residue__[0][0] == "#" and s[0] != "#": + if len(__residue__) != 0 and __residue__[0][0] == "#" and (not s or s[0] != "#"): 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)) if s and s[-1] == '\\': diff --git a/bitbake/lib/bb/parse/parse_py/ConfHandler.py b/bitbake/lib/bb/parse/parse_py/ConfHandler.py index 9b09c9f56a..8f3f120ed5 100644 --- a/bitbake/lib/bb/parse/parse_py/ConfHandler.py +++ b/bitbake/lib/bb/parse/parse_py/ConfHandler.py @@ -108,7 +108,7 @@ def handle(fn, data, include): while s[-1] == '\\': s2 = f.readline().strip() lineno = lineno + 1 - if s2 and s[0] == "#" and s2[0] != "#": + if (not s2 or s2 and s2[0] != "#") and s[0] == "#" : 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)) s = s[:-1] + s2 # skip comments -- cgit v1.2.3-54-g00ecf