diff options
author | Sayamindu Dasgupta <sayamindu@gmail.com> | 2009-11-20 10:29:05 (GMT) |
---|---|---|
committer | Sayamindu Dasgupta <sayamindu@gmail.com> | 2009-11-20 10:29:05 (GMT) |
commit | 65483b46fcdfe26aaf9244bbcefb69405a1e6130 (patch) | |
tree | 1ef303b1dbacbbde8cf448699e3b3c58f5a5c61d | |
parent | a915b98e0e8fcfba41b5ecc4306e570d8669c7b4 (diff) |
Do not barf due to damaged timestamp, keep metadata: Fixes d.l.o#9559
-rw-r--r-- | src/jarabe/journal/collapsedentry.py | 6 | ||||
-rw-r--r-- | src/jarabe/journal/misc.py | 11 |
2 files changed, 14 insertions, 3 deletions
diff --git a/src/jarabe/journal/collapsedentry.py b/src/jarabe/journal/collapsedentry.py index 3eeb087..36ef09f 100644 --- a/src/jarabe/journal/collapsedentry.py +++ b/src/jarabe/journal/collapsedentry.py @@ -206,7 +206,11 @@ class BaseCollapsedEntry(hippo.CanvasBox): int(self.metadata['progress']) < 100 def get_keep(self): - keep = int(self.metadata.get('keep', 0)) + try: + keep = int(self.metadata.get('keep', 0)) + except ValueError: + logging.warning('Got a ValueError while getting keep metadata.') + keep = 0 return keep == 1 def __keep_icon_button_release_event_cb(self, button, event): diff --git a/src/jarabe/journal/misc.py b/src/jarabe/journal/misc.py index b29b744..90b0453 100644 --- a/src/jarabe/journal/misc.py +++ b/src/jarabe/journal/misc.py @@ -84,8 +84,15 @@ def get_icon_name(metadata): def get_date(metadata): """ Convert from a string in iso format to a more human-like format. """ if metadata.has_key('timestamp'): - timestamp = float(metadata['timestamp']) - return util.timestamp_to_elapsed_string(timestamp) + try: + timestamp = float(metadata['timestamp']) + except ValueError: + logging.warning('Got a ValueError while getting timestamp.') + timestamp = None + if timestamp is None: + return _('No date') + else: + return util.timestamp_to_elapsed_string(timestamp) elif metadata.has_key('mtime'): ti = time.strptime(metadata['mtime'], "%Y-%m-%dT%H:%M:%S") return util.timestamp_to_elapsed_string(time.mktime(ti)) |