aboutsummaryrefslogtreecommitdiffhomepage
path: root/bindings/python/notmuch/thread.py
diff options
context:
space:
mode:
authorGravatar pazz <patricktotzke@gmail.com>2011-08-16 22:37:47 +0100
committerGravatar Sebastian Spaeth <Sebastian@SSpaeth.de>2011-08-17 14:44:45 +0200
commitf10ec87cc3ed9cbdb4e535ee6574c2a568c38b1d (patch)
treea34840edf944b100b67d36b88fafd00094e6f99c /bindings/python/notmuch/thread.py
parentee4579ad27b0f84650f0c211ea92e2f874df8044 (diff)
python: Fix unsafe utf-8 decodings
This prevents unsafe calls to decode for return value None in get_authors/get_subject which would current throw an Exception. Original patch modified by Sebastian Spaeth. Signed-off-by: Sebastian Spaeth <Sebastian@SSpaeth.de>
Diffstat (limited to 'bindings/python/notmuch/thread.py')
-rw-r--r--bindings/python/notmuch/thread.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/bindings/python/notmuch/thread.py b/bindings/python/notmuch/thread.py
index 120f9258..83b4202d 100644
--- a/bindings/python/notmuch/thread.py
+++ b/bindings/python/notmuch/thread.py
@@ -292,7 +292,10 @@ class Thread(object):
"""
if self._thread is None:
raise NotmuchError(STATUS.NOT_INITIALIZED)
- return Thread._get_authors(self._thread).decode('UTF-8')
+ authors = Thread._get_authors(self._thread)
+ if authors is None:
+ return None
+ return authors.decode('UTF-8')
def get_subject(self):
"""Returns the Subject of 'thread'
@@ -302,7 +305,10 @@ class Thread(object):
"""
if self._thread is None:
raise NotmuchError(STATUS.NOT_INITIALIZED)
- return Thread._get_subject(self._thread).decode('UTF-8')
+ subject = Thread._get_subject(self._thread)
+ if subject is None:
+ return None
+ return subject.decode('UTF-8')
def get_newest_date(self):
"""Returns time_t of the newest message date