]> git.cworth.org Git - notmuch/commitdiff
notmuch-dump: treat any remaining arguments after the filename as search terms
authorDavid Bremner <bremner@debian.org>
Sun, 9 Oct 2011 14:12:30 +0000 (11:12 -0300)
committerDavid Bremner <bremner@debian.org>
Sun, 16 Oct 2011 22:59:53 +0000 (19:59 -0300)
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
test/dump-restore

index 610144e07e9bb078f311da2be7a3bbf97682d4d8..ac5d0742e0f9c61d74eca06633e199ee13491f47 100644 (file)
@@ -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;
index 3f9a5319e98401aeb05917fd7fefda78cc7421bd..e7edd9b2573df7fc43e8a2565513c341202e4579 100755 (executable)
@@ -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