From f14b5446686108d3565f5bf33fd4dd53aba705ac Mon Sep 17 00:00:00 2001 From: Chris Jones Date: Thu, 4 Sep 2008 22:27:13 +0100 Subject: [PATCH] Apply patch from 'SXW', closing LP #237796 --- terminatorlib/config.py | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/terminatorlib/config.py b/terminatorlib/config.py index 19340a66..e5bf1f8c 100755 --- a/terminatorlib/config.py +++ b/terminatorlib/config.py @@ -406,16 +406,20 @@ class TerminatorConfValuestoreGConf (TerminatorConfValuestore): value = self.client.get ('%s/%s'%(self.profile, key)) if value: - funcname = "get_" + Defaults[key].__class__.__name__ - dbg (' GConf: picked function: %s'%funcname) - # Special case for str - if funcname == "get_str": - funcname = "get_string" - # Special case for strlist - if funcname == "get_strlist": - funcname = "get_list" - typefunc = getattr (value, funcname) - ret = typefunc () + from types import StringType + if type(value) is StringType: + ret = value + else: + funcname = "get_" + Defaults[key].__class__.__name__ + dbg (' GConf: picked function: %s'%funcname) + # Special case for str + if funcname == "get_str": + funcname = "get_string" + # Special case for strlist + if funcname == "get_strlist": + funcname = "get_list" + typefunc = getattr (value, funcname) + ret = typefunc () self.cache[key] = ret return (ret)