From: Thomas Jost <schnouki@schnouki.net>
Date: Fri, 30 Sep 2011 10:16:47 +0000 (+0200)
Subject: python: fix Message.get_filenames()
X-Git-Tag: 0.9~28
X-Git-Url: https://git.cworth.org/git?a=commitdiff_plain;h=a859d1c8668d9bec03f2b9525c7029c578c1b427;p=notmuch-old

python: fix Message.get_filenames()

Previously, the Filenames generator only yielded *one* filename before
returning, making Message.get_filenames() behave as Message.get_filename(). This
commit fixes this incorrect behavior: now the generator yields all the
filenames, as expected.
---

diff --git a/bindings/python/notmuch/filename.py b/bindings/python/notmuch/filename.py
index a16e717e..de4d785a 100644
--- a/bindings/python/notmuch/filename.py
+++ b/bindings/python/notmuch/filename.py
@@ -82,13 +82,11 @@ class Filenames(object):
         if self._files is None:
             raise NotmuchError(STATUS.NOT_INITIALIZED)
 
-        if not nmlib.notmuch_filenames_valid(self._files):
-            self._files = None
-            return
+        while nmlib.notmuch_filenames_valid(self._files):
+            yield Filenames._get(self._files)
+            nmlib.notmuch_filenames_move_to_next(self._files)
 
-        file = Filenames._get(self._files)
-        nmlib.notmuch_filenames_move_to_next(self._files)
-        yield file
+        self._files = None
 
     def __str__(self):
         """Represent Filenames() as newline-separated list of full paths