Use __import__ for the ui rather than exec

(Bitbake rev: 7d00bab300961431f9960cf6759966f608580bc0)

Signed-off-by: Chris Larson <chris_larson@mentor.com>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
This commit is contained in:
Chris Larson 2010-04-09 13:25:58 -07:00 committed by Richard Purdie
parent 8c5108fa21
commit 21a9692c7d
1 changed files with 6 additions and 6 deletions

View File

@ -181,12 +181,12 @@ Default BBFILES are the .bb files in the current directory.""" )
ui = "knotty"
try:
# Dynamically load the UI based on the ui name. Although we
# suggest a fixed set this allows you to have flexibility in which
# ones are available.
exec "from bb.ui import " + ui
exec "return_value = " + ui + ".init(serverConnection.connection, serverConnection.events)"
except ImportError:
# Dynamically load the UI based on the ui name. Although we
# suggest a fixed set this allows you to have flexibility in which
# ones are available.
uimodule = __import__("bb.ui", fromlist=[ui])
return_value = getattr(uimodule, ui).init(serverConnection.connection, serverConnection.events)
except AttributeError:
print "FATAL: Invalid user interface '%s' specified. " % ui
print "Valid interfaces are 'ncurses', 'depexp' or the default, 'knotty'."
except Exception, e: