From: miker Date: Sat, 9 Sep 2006 20:58:03 +0000 (+0000) Subject: fixing NOT IN queries X-Git-Url: https://old-git.evergreen-ils.org/?a=commitdiff_plain;h=f5d949ff178a6e733da521973009380dc9f79301;p=Evergreen.git fixing NOT IN queries git-svn-id: svn://svn.open-ils.org/ILS/trunk@6042 dcc99617-32d9-48b4-a31d-7c20da2025e4 --- diff --git a/Open-ILS/src/c-apps/oils_cstore.c b/Open-ILS/src/c-apps/oils_cstore.c index 84145016df..71471573a3 100644 --- a/Open-ILS/src/c-apps/oils_cstore.c +++ b/Open-ILS/src/c-apps/oils_cstore.c @@ -910,7 +910,7 @@ char* searchINPredicate (osrfHash* field, jsonObject* node, const char* op) { if (!op) { buffer_add(sql_buf, "IN ("); - } else if ((strcmp(op,"=") || strcmp(op,"in")) || !(strcasecmp(op,"not in"))) { + } else if (!(strcasecmp(op,"not in"))) { buffer_add(sql_buf, "NOT IN ("); } else { buffer_add(sql_buf, "IN ("); @@ -1175,7 +1175,7 @@ char* searchPredicate ( osrfHash* field, jsonObject* node ) { while ( (pred_node = jsonObjectIteratorNext( pred_itr )) ) { if ( !(strcasecmp( pred_node->key,"between" )) ) pred = searchBETWEENPredicate( field, pred_node->item ); - else if ( !(strcasecmp( pred_node->key,"in" )) ) + else if ( !(strcasecmp( pred_node->key,"in" )) || !(strcasecmp( pred_node->key,"not in" )) ) pred = searchINPredicate( field, pred_node->item, pred_node->key ); else if ( pred_node->item->type == JSON_ARRAY ) pred = searchFunctionPredicate( field, pred_node );