summaryrefslogtreecommitdiffstats
path: root/daemon/config.py
diff options
context:
space:
mode:
authorHuang Peng <shawn.p.huang@gmail.com>2008-07-30 14:43:08 +0800
committerHuang Peng <shawn.p.huang@gmail.com>2008-07-30 14:43:08 +0800
commitcc7f9b0590321b9aa8fefd2f3d10b703da8e5d03 (patch)
tree0f9f23c08314e120f9f52f7984396b556bb2e2a1 /daemon/config.py
parent12afe7c562211c255cccf29091fe4ac3d7d7f0c5 (diff)
downloadibus-cc7f9b0590321b9aa8fefd2f3d10b703da8e5d03.tar.gz
ibus-cc7f9b0590321b9aa8fefd2f3d10b703da8e5d03.tar.xz
ibus-cc7f9b0590321b9aa8fefd2f3d10b703da8e5d03.zip
Fix problem if pass None as reply_handler or error_handler to config_set_value.
Diffstat (limited to 'daemon/config.py')
-rw-r--r--daemon/config.py20
1 files changed, 12 insertions, 8 deletions
diff --git a/daemon/config.py b/daemon/config.py
index 7b80b78..53d531d 100644
--- a/daemon/config.py
+++ b/daemon/config.py
@@ -89,28 +89,32 @@ class DefaultConfig(ibus.Object):
self.__handler_id = self.__config.connect("value-changed", self.__value_changed_cb)
def get_value(self, key, **kargs):
+ reply_handler = kargs.get("reply_handler", None)
+ error_handler = kargs.get("reply_handler", None)
try:
value = self.__config.get_value(key)
- if "reply_handler" in kargs:
- kargs["reply_handler"](value)
+ if reply_handler:
+ reply_handler(value)
else:
return value
except Exception, e:
- if "error_handler" in kargs:
- kargs["error_handler"](e)
+ if error_handler:
+ error_handler(e)
else:
raise e
def set_value(self, key, value, **kargs):
+ reply_handler = kargs.get("reply_handler", None)
+ error_handler = kargs.get("reply_handler", None)
try:
self.__config.set_value(key, value)
- if "reply_handler" in kargs:
- kargs["reply_handler"]()
+ if reply_handler:
+ reply_handler()
else:
return
except Exception, e:
- if "error_handler" in kargs:
- kargs["error_handler"](e)
+ if error_handler:
+ error_handler(e)
else:
raise e