diff options
author | Carl Worth <cworth@cworth.org> | 2009-11-12 20:31:22 -0800 |
---|---|---|
committer | Carl Worth <cworth@cworth.org> | 2009-11-12 20:31:22 -0800 |
commit | bbf4b8e4aec69b5684587b77bd0af743afd61eb1 (patch) | |
tree | 7cc224d9a22a1b9de93c5fcaa978f9d47364dcd4 /lib/query.cc | |
parent | e4a7c2b8703280e93b205965d7df1b7dda8a0bf7 (diff) |
notmuch_query_search_threads: Avoid returning more threads than asked for.
I thought it would be safe enough to return a few extra threads,
(since we happened to already get the relevant messages out of the
database). The problem is that then requires the caller to carefully
read the number of threads returned and adjust its next "first" value
accordingly. The interface is much simpler to use if we simply return
exactly what is asked for and no more.
Diffstat (limited to 'lib/query.cc')
-rw-r--r-- | lib/query.cc | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/query.cc b/lib/query.cc index 4b4c80f..381529b 100644 --- a/lib/query.cc +++ b/lib/query.cc @@ -237,6 +237,9 @@ notmuch_query_search_threads (notmuch_query_t *query, notmuch_message_destroy (message); messages_seen++; + + if (max_threads >= 0 && threads_seen >= first + max_threads) + break; } /* Stop if we're not seeing any more messages. */ |