[Dextrose] [PATCH sugar-toolkit 4/4] XoColor: don't choke if passed the wrong type (SL#1408)

Aleksey Lim alsroot at member.fsf.org
Sat Jan 15 12:07:19 EST 2011

From: Sascha Silbe <sascha-pgp at silbe.org>

Color data is stored in the Journal as a JSON dump, so we can get back
arbitrary types. XoColor already checks the color string for validity and
handles invalid strings gracefully, so it makes sense to enhance this to
invalid types as well.

Acked-by: Simon Schampijer <simon at schampijer.de>
 src/sugar/graphics/xocolor.py |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/sugar/graphics/xocolor.py b/src/sugar/graphics/xocolor.py
index fd329cb..036d695 100644
--- a/src/sugar/graphics/xocolor.py
+++ b/src/sugar/graphics/xocolor.py
@@ -209,6 +209,10 @@ colors = [
 def _parse_string(color_string):
+    if not isinstance(color_string, (str, unicode)):
+        logging.error('Invalid color string: %r', color_string)
+        return None
     if color_string == 'white':
         return ['#ffffff', '#414141']
     elif color_string == 'insensitive':

More information about the Dextrose mailing list