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

Sascha Silbe sascha-pgp at silbe.org
Sun Oct 17 06:09:19 EDT 2010

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.

Signed-off-by: Sascha Silbe <sascha-pgp at silbe.org>
 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 df60917..395e345 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 Sugar-devel mailing list