qapi: Fix file name in error messages for included files
We print the name as it appears in the include expression. Tools processing error messages want it relative to the working directory. Make it so. Signed-off-by: Markus Armbruster <armbru@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com>
This commit is contained in:
parent
54414047ec
commit
8608d25251
|
@ -101,13 +101,12 @@ class QAPIExprError(Exception):
|
||||||
|
|
||||||
class QAPISchema:
|
class QAPISchema:
|
||||||
|
|
||||||
def __init__(self, fp, fname = None, include_hist = [],
|
def __init__(self, fp, include_hist = [],
|
||||||
previously_included = [], incl_info = None):
|
previously_included = [], incl_info = None):
|
||||||
""" include_hist is a stack used to detect inclusion cycles
|
""" include_hist is a stack used to detect inclusion cycles
|
||||||
previously_included is a global state used to avoid multiple
|
previously_included is a global state used to avoid multiple
|
||||||
inclusions of the same file"""
|
inclusions of the same file"""
|
||||||
abs_fname = os.path.abspath(fp.name)
|
abs_fname = os.path.abspath(fp.name)
|
||||||
if fname is None:
|
|
||||||
fname = fp.name
|
fname = fp.name
|
||||||
self.fname = fname
|
self.fname = fname
|
||||||
self.include_hist = include_hist + [(fname, abs_fname)]
|
self.include_hist = include_hist + [(fname, abs_fname)]
|
||||||
|
@ -148,7 +147,7 @@ class QAPISchema:
|
||||||
except IOError, e:
|
except IOError, e:
|
||||||
raise QAPIExprError(expr_info,
|
raise QAPIExprError(expr_info,
|
||||||
'%s: %s' % (e.strerror, include))
|
'%s: %s' % (e.strerror, include))
|
||||||
exprs_include = QAPISchema(fobj, include, self.include_hist,
|
exprs_include = QAPISchema(fobj, self.include_hist,
|
||||||
previously_included, expr_info)
|
previously_included, expr_info)
|
||||||
self.exprs.extend(exprs_include.exprs)
|
self.exprs.extend(exprs_include.exprs)
|
||||||
else:
|
else:
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
In file included from tests/qapi-schema/include-cycle.json:1:
|
In file included from tests/qapi-schema/include-cycle.json:1:
|
||||||
In file included from include-cycle-b.json:1:
|
In file included from tests/qapi-schema/include-cycle-b.json:1:
|
||||||
include-cycle-c.json:1: Inclusion loop for include-cycle.json
|
tests/qapi-schema/include-cycle-c.json:1: Inclusion loop for include-cycle.json
|
||||||
|
|
|
@ -1,2 +1,2 @@
|
||||||
In file included from tests/qapi-schema/include-nested-err.json:1:
|
In file included from tests/qapi-schema/include-nested-err.json:1:
|
||||||
missing-colon.json:1:10: Expected ":"
|
tests/qapi-schema/missing-colon.json:1:10: Expected ":"
|
||||||
|
|
Loading…
Reference in a new issue