From d4934d73a70ed98889ae3d0c64d55cdfeab86391 Mon Sep 17 00:00:00 2001 From: Simon Schampijer Date: Mon, 17 Sep 2012 11:14:31 +0200 Subject: [PATCH] IconEntry, set_icon_from_name: handle case when icon can not be found cleanly MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sugar crashes if the sugar theme has not been set (in sugar-session) in the set_icon_from_name method since some if the requested icons can not be found. Handle that case cleanly. Signed-off-by: Simon Schampijer Acked-by: Manuel QuiƱones --- src/sugar3/graphics/iconentry.py | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/sugar3/graphics/iconentry.py b/src/sugar3/graphics/iconentry.py index 154dfd0d..f4e5682f 100644 --- a/src/sugar3/graphics/iconentry.py +++ b/src/sugar3/graphics/iconentry.py @@ -15,6 +15,8 @@ # Free Software Foundation, Inc., 59 Temple Place - Suite 330, # Boston, MA 02111-1307, USA. +import logging + from gi.repository import GObject from gi.repository import Gtk from gi.repository import Gdk @@ -42,6 +44,10 @@ class IconEntry(Gtk.Entry): icon_info = icon_theme.lookup_icon(name, Gtk.IconSize.SMALL_TOOLBAR, 0) + if not icon_info: + logging.warning('IconEntry set_icon_from_name: icon \'%s\' not ' + 'found in the theme.', name) + return if icon_info.get_filename().endswith('.svg'): loader = _SVGLoader()