From 09beff1def1daa9887679723205855ff7da8a297 Mon Sep 17 00:00:00 2001
From: David Bremner <bremner@debian.org>
Date: Sun, 9 Oct 2011 11:12:30 -0300
Subject: [PATCH] notmuch-dump: treat any remaining arguments after the
 filename as search terms

The main motivation here is allow the fast dumping of tag data for
messages having certain tags.  In practice it seems too slow to pipe
dump to grep.

All dump-restore tests should be working now, so we update test/dump-restore
accordingly
---
 notmuch-dump.c    | 11 ++++++++++-
 test/dump-restore |  3 ---
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/notmuch-dump.c b/notmuch-dump.c
index 610144e0..ac5d0742 100644
--- a/notmuch-dump.c
+++ b/notmuch-dump.c
@@ -30,6 +30,7 @@ notmuch_dump_command (unused (void *ctx), int argc, char *argv[])
     notmuch_messages_t *messages;
     notmuch_message_t *message;
     notmuch_tags_t *tags;
+    const char* query_str = "";
 
     config = notmuch_config_open (ctx, NULL, NULL);
     if (config == NULL)
@@ -56,7 +57,15 @@ notmuch_dump_command (unused (void *ctx), int argc, char *argv[])
 	argv++;
     }
 
-    query = notmuch_query_create (notmuch, "");
+    if (argc) {
+	query_str = query_string_from_args (notmuch, argc, argv);
+	if (query_str == NULL) {
+	    fprintf (stderr, "Out of memory.\n");
+	    return 1;
+	}
+    }
+ 
+    query = notmuch_query_create (notmuch, query_str);
     if (query == NULL) {
 	fprintf (stderr, "Out of memory\n");
 	return 1;
diff --git a/test/dump-restore b/test/dump-restore
index 3f9a5319..e7edd9b2 100755
--- a/test/dump-restore
+++ b/test/dump-restore
@@ -22,17 +22,14 @@ test_expect_equal_file dump.expected dump-1-arg-dash.actual
 grep cworth\.org dump.expected > dump-cworth.expected
 
 test_begin_subtest "dump -- from:cworth"
-test_subtest_known_broken
 notmuch dump -- from:cworth > dump-dash-cworth.actual
 test_expect_equal_file dump-cworth.expected dump-dash-cworth.actual
 
 test_begin_subtest "dump outfile from:cworth"
-test_subtest_known_broken
 notmuch dump dump-outfile-cworth.actual from:cworth
 test_expect_equal_file dump-cworth.expected dump-outfile-cworth.actual
 
 test_begin_subtest "dump outfile -- from:cworth"
-test_subtest_known_broken
 notmuch dump dump-outfile-dash-inbox.actual -- from:cworth
 test_expect_equal_file dump-cworth.expected dump-outfile-dash-inbox.actual
 
-- 
2.45.2