summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/event.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/bb/event.py')
-rw-r--r--bitbake/lib/bb/event.py5
1 files changed, 3 insertions, 2 deletions
diff --git a/bitbake/lib/bb/event.py b/bitbake/lib/bb/event.py
index f8acacd80d..4761c86880 100644
--- a/bitbake/lib/bb/event.py
+++ b/bitbake/lib/bb/event.py
@@ -257,14 +257,15 @@ def register(name, handler, mask=None, filename=None, lineno=None, data=None):
257 # handle string containing python code 257 # handle string containing python code
258 if isinstance(handler, str): 258 if isinstance(handler, str):
259 tmp = "def %s(e, d):\n%s" % (name, handler) 259 tmp = "def %s(e, d):\n%s" % (name, handler)
260 # Inject empty lines to make code match lineno in filename
261 if lineno is not None:
262 tmp = "\n" * (lineno-1) + tmp
260 try: 263 try:
261 code = bb.methodpool.compile_cache(tmp) 264 code = bb.methodpool.compile_cache(tmp)
262 if not code: 265 if not code:
263 if filename is None: 266 if filename is None:
264 filename = "%s(e, d)" % name 267 filename = "%s(e, d)" % name
265 code = compile(tmp, filename, "exec", ast.PyCF_ONLY_AST) 268 code = compile(tmp, filename, "exec", ast.PyCF_ONLY_AST)
266 if lineno is not None:
267 ast.increment_lineno(code, lineno-1)
268 code = compile(code, filename, "exec") 269 code = compile(code, filename, "exec")
269 bb.methodpool.compile_cache_add(tmp, code) 270 bb.methodpool.compile_cache_add(tmp, code)
270 except SyntaxError: 271 except SyntaxError: