From 94c5edd064f856a888ce29f7ac1523006b4b8fd6 Mon Sep 17 00:00:00 2001
From: Sebastian Spaeth <Sebastian@SSpaeth.de>
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 <Sebastian@SSpaeth.de>
---
 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
 
-- 
2.45.2