unofficial mirror of notmuch@notmuchmail.org
 help / color / mirror / code / Atom feed
* [PATCH] util: Fix corner-case in boolean term quoting function
@ 2014-03-11 20:03 Austin Clements
  0 siblings, 0 replies; only message in thread
From: Austin Clements @ 2014-03-11 20:03 UTC (permalink / raw)
  To: notmuch

Previously, make_boolean_term did not quote boolean terms that started
with '('.  This is incompatible with Xapian, since boolean terms that
start with '(' trigger an alternate term quoting syntax.

Fix this by quoting terms that contain '('.
---
 util/string-util.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/util/string-util.c b/util/string-util.c
index 9e2f728..fd3ceb2 100644
--- a/util/string-util.c
+++ b/util/string-util.c
@@ -75,10 +75,10 @@ make_boolean_term (void *ctx, const char *prefix, const char *term,
     int need_quoting = 0;
 
     /* Do we need quoting?  To be paranoid, we quote anything
-     * containing a quote, even though it only matters at the
+     * containing a quote or '(', even though these only matter at the
      * beginning, and anything containing non-ASCII text. */
     for (in = term; *in && !need_quoting; in++)
-	if (is_unquoted_terminator (*in) || *in == '"'
+	if (is_unquoted_terminator (*in) || *in == '"' || *in == '('
 	    || (unsigned char)*in > 127)
 	    need_quoting = 1;
 
-- 
1.8.4.rc3

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2014-03-11 20:03 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-03-11 20:03 [PATCH] util: Fix corner-case in boolean term quoting function Austin Clements

Code repositories for project(s) associated with this public inbox

	https://yhetil.org/notmuch.git/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).