diff options
Diffstat (limited to 'services')
-rw-r--r-- | services/clipboard/clipboardobject.py | 3 | ||||
-rw-r--r-- | services/clipboard/clipboardservice.py | 6 |
2 files changed, 7 insertions, 2 deletions
diff --git a/services/clipboard/clipboardobject.py b/services/clipboard/clipboardobject.py index 7de4730..d751274 100644 --- a/services/clipboard/clipboardobject.py +++ b/services/clipboard/clipboardobject.py @@ -134,7 +134,8 @@ class Format: def destroy(self): if self._on_disk: uri = urlparse.urlparse(self._data) - os.remove(uri.path) + if os.path.isfile(uri.path): + os.remove(uri.path) def get_type(self): return self._type diff --git a/services/clipboard/clipboardservice.py b/services/clipboard/clipboardservice.py index 569ed6b..639f29c 100644 --- a/services/clipboard/clipboardservice.py +++ b/services/clipboard/clipboardservice.py @@ -127,9 +127,13 @@ class ClipboardService(dbus.service.Object): in_signature="o", out_signature="a{sv}") def get_object(self, object_path): logging.debug('ClipboardService.get_object') + + if not self._objects.has_key(str(object_path)): + return dbus.Dictionary({}, signature='sv') + cb_object = self._objects[str(object_path)] formats = cb_object.get_formats() - format_types = dbus.Array([], 's') + format_types = dbus.Array([], signature='s') for type, format in formats.iteritems(): format_types.append(type) |