From 94c5edd064f856a888ce29f7ac1523006b4b8fd6 Mon Sep 17 00:00:00 2001 From: Sebastian Spaeth Date: Tue, 9 Aug 2011 17:45:44 +0200 Subject: [PATCH] python: Do explicitly check if the next tag exists If we try to pull a non-existing tag, Tags._get will return None and the appended .decode() command will fail. So make sure that there is a tag to be fetched before fetching it. Signed-off-by: Sebastian Spaeth --- bindings/python/notmuch/tag.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/bindings/python/notmuch/tag.py b/bindings/python/notmuch/tag.py index 0ce6f9ae..f79a1786 100644 --- a/bindings/python/notmuch/tag.py +++ b/bindings/python/notmuch/tag.py @@ -83,12 +83,10 @@ class Tags(object): def next(self): if self._tags is None: raise NotmuchError(STATUS.NOT_INITIALIZED) - # No need to call nmlib.notmuch_tags_valid(self._tags); - # Tags._get safely returns None, if there is no more valid tag. - tag = Tags._get(self._tags).decode('utf-8') - if tag is None: + if not nmlib.notmuch_tags_valid(self._tags): self._tags = None raise StopIteration + tag = Tags._get(self._tags).decode('utf-8') nmlib.notmuch_tags_move_to_next(self._tags) return tag