From 38a756daa939a1dc2546565a690eec7ad7d2060d Mon Sep 17 00:00:00 2001 From: David Khouya Date: Wed, 1 Jul 2020 12:27:40 -0400 Subject: bitbake: lib/ui/taskexp: Validate gi import When running bitbake -g -u taskexp without having gi python module or and invalid gtk version, bitbake fails with a stack trace. In case of import or version error, bitbake should exit with an error message instead of a stack trace. (Bitbake rev: 45e32f2651d35bf7a315af95cfe0b1070e038c9e) Signed-off-by: David Khouya Signed-off-by: Richard Purdie (cherry picked from commit 2a2c507f239b047f34765312df4168030e38b90d) Signed-off-by: Steve Sakoman Signed-off-by: Richard Purdie --- bitbake/lib/bb/ui/taskexp.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'bitbake') diff --git a/bitbake/lib/bb/ui/taskexp.py b/bitbake/lib/bb/ui/taskexp.py index 8fff244235..336d197deb 100644 --- a/bitbake/lib/bb/ui/taskexp.py +++ b/bitbake/lib/bb/ui/taskexp.py @@ -8,9 +8,15 @@ # import sys -import gi -gi.require_version('Gtk', '3.0') -from gi.repository import Gtk, Gdk, GObject + +try: + import gi + gi.require_version('Gtk', '3.0') +except ValueError: + sys.exit("FATAL: Gtk version needs to be 3.0") +except ImportError: + sys.exit("FATAL: Gtk ui could not load the required gi python module") + import threading from xmlrpc import client import bb -- cgit v1.2.3-54-g00ecf