Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/services
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@tomeuvizoso.net>2007-07-20 18:45:22 (GMT)
committer Tomeu Vizoso <tomeu@tomeuvizoso.net>2007-07-20 18:45:22 (GMT)
commit6e6fd02322e8e3554cfc241fadb3b74d3a38f34d (patch)
treef05cd00eaca8821212fc50d76705ba18e2a6da73 /services
parentc07e61509b0d6a40a9037e77aa24fecea62573d8 (diff)
#2268 Allow removing downloads from the clipboard while in progress.
Diffstat (limited to 'services')
-rw-r--r--services/clipboard/clipboardobject.py3
-rw-r--r--services/clipboard/clipboardservice.py6
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)