query: Remove the magic NOTMUCH_QUERY_ALL
authorCarl Worth <cworth@cworth.org>
Wed, 21 Oct 2009 05:40:37 +0000 (22:40 -0700)
committerCarl Worth <cworth@cworth.org>
Wed, 21 Oct 2009 05:40:37 +0000 (22:40 -0700)
Using the address of a static char* was clever, but really
unnecessary. An empty string is much less magic, and even
easier to understand as the way to query everything from
the database.

notmuch.c
notmuch.h
query.cc

index 43af75d2450215c3a67019c425e266cb9b00b2f6..6be2881c2227a1e67d407f69c43506417ced140f 100644 (file)
--- a/notmuch.c
+++ b/notmuch.c
@@ -398,7 +398,7 @@ dump_command (int argc, char *argv[])
        goto DONE;
     }
 
        goto DONE;
     }
 
-    query = notmuch_query_create (notmuch, NOTMUCH_QUERY_ALL);
+    query = notmuch_query_create (notmuch, "");
     if (query == NULL) {
        fprintf (stderr, "Out of memory\n");
        ret = 1;
     if (query == NULL) {
        fprintf (stderr, "Out of memory\n");
        ret = 1;
index 10067d3fb499b271bdbd01e6ec7f11b0b520e4e0..df432bcc6605f5ddfb14e672bde30383e59ac37e 100644 (file)
--- a/notmuch.h
+++ b/notmuch.h
@@ -174,9 +174,8 @@ notmuch_database_add_message (notmuch_database_t *database,
  *
  * http://xapian.org/docs/queryparser.html
  *
  *
  * http://xapian.org/docs/queryparser.html
  *
- * As a special case, passing a value of NOTMUCH_QUERY_ALL for the
- * query string will result in a query that returns all messages in
- * the database.
+ * As a special case, passing a length-zero string, (that is ""), will
+ * result in a query that returns all messages in the database.
  *
  * See notmuch_query_set_sort for controlling the order of results and
  * notmuch_query_search to actually execute the query.
  *
  * See notmuch_query_set_sort for controlling the order of results and
  * notmuch_query_search to actually execute the query.
@@ -190,10 +189,6 @@ notmuch_query_t *
 notmuch_query_create (notmuch_database_t *database,
                      const char *query_string);
 
 notmuch_query_create (notmuch_database_t *database,
                      const char *query_string);
 
-/* Special value to cause notmuch_query_create to return all
- * messages. */
-extern const char *NOTMUCH_QUERY_ALL;
-
 /* Sort values for notmuch_query_set_sort */
 typedef enum {
     NOTMUCH_SORT_DATE_OLDEST_FIRST,
 /* Sort values for notmuch_query_set_sort */
 typedef enum {
     NOTMUCH_SORT_DATE_OLDEST_FIRST,
index 2a1815a748425f34fb20a8e210cd311ec10c1d9d..50223b02bdd48ee5408d0e891cfef5f64bf7f8aa 100644 (file)
--- a/query.cc
+++ b/query.cc
@@ -23,8 +23,6 @@
 
 #include <xapian.h>
 
 
 #include <xapian.h>
 
-const char *NOTMUCH_QUERY_ALL = "";
-
 struct _notmuch_query {
     notmuch_database_t *notmuch;
     const char *query_string;
 struct _notmuch_query {
     notmuch_database_t *notmuch;
     const char *query_string;
@@ -49,11 +47,7 @@ notmuch_query_create (notmuch_database_t *notmuch,
 
     query->notmuch = notmuch;
 
 
     query->notmuch = notmuch;
 
-    /* Special-case NOTMUCH_QUERY_ALL so we see it and not a copy. */
-    if (query_string == NOTMUCH_QUERY_ALL)
-       query->query_string = query_string;
-    else
-       query->query_string = talloc_strdup (query, query_string);
+    query->query_string = talloc_strdup (query, query_string);
 
     query->sort = NOTMUCH_SORT_DATE_OLDEST_FIRST;
 
 
     query->sort = NOTMUCH_SORT_DATE_OLDEST_FIRST;
 
@@ -91,7 +85,7 @@ notmuch_query_search (notmuch_query_t *query)
        return NULL;
 
     try {
        return NULL;
 
     try {
-       if (query->query_string != NOTMUCH_QUERY_ALL) {
+       if (strlen (query->query_string)) {
            fprintf (stderr, "Error: Arbitrary search strings are not supported yet. Come back soon!\n");
            exit (1);
        }
            fprintf (stderr, "Error: Arbitrary search strings are not supported yet. Come back soon!\n");
            exit (1);
        }