Fix filters parsing
authorAdam Dickmeiss <adam@indexdata.dk>
Thu, 8 Oct 2009 10:28:54 +0000 (12:28 +0200)
committerAdam Dickmeiss <adam@indexdata.dk>
Thu, 8 Oct 2009 10:28:54 +0000 (12:28 +0200)
Fix the filter parsing so that equal name=value is working again.
In parse_filter, the eq would be set to NULL after finding '='.

src/logic.c

index f9cd08f..26fe5e7 100644 (file)
@@ -446,7 +446,7 @@ static struct database_criterion *parse_filter(NMEM m, const char *buf)
         char *eq;
         if ((eq = strchr(values[i], '=')))
             new->type = PAZPAR2_STRING_MATCH;
-        if ((eq = strchr(values[i], '~')))
+        else if ((eq = strchr(values[i], '~')))
             new->type = PAZPAR2_SUBSTRING_MATCH;
         if (!eq)
         {