diff options
author | Christopher Larson <chris_larson@mentor.com> | 2016-04-30 12:43:53 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2016-05-06 10:18:06 +0100 |
commit | a3e5d9337f5400aab13df63f261e750178f8a661 (patch) | |
tree | d83a456b6af3ddbfba8a929a0e4e4f2a25c03091 | |
parent | e90cfc655affeec8f5519f7078dad5f99db3c461 (diff) | |
download | openembedded-core-contrib-a3e5d9337f5400aab13df63f261e750178f8a661.tar.gz |
bb.event: handle __builtins__ as a module
Fixes pypy support.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | lib/bb/event.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/bb/event.py b/lib/bb/event.py index 5ffe89eae3..5a03a31f43 100644 --- a/lib/bb/event.py +++ b/lib/bb/event.py @@ -72,11 +72,16 @@ _catchall_handlers = {} _eventfilter = None _uiready = False +if hasattr(__builtins__, '__setitem__'): + builtins = __builtins__ +else: + builtins = __builtins__.__dict__ + def execute_handler(name, handler, event, d): event.data = d addedd = False - if 'd' not in __builtins__: - __builtins__['d'] = d + if 'd' not in builtins: + builtins['d'] = d addedd = True try: ret = handler(event) @@ -94,7 +99,7 @@ def execute_handler(name, handler, event, d): finally: del event.data if addedd: - del __builtins__['d'] + del builtins['d'] def fire_class_handlers(event, d): if isinstance(event, logging.LogRecord): |