adding subselect support (do not add semicolons to subselects)
authormiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Tue, 11 Nov 2008 20:44:05 +0000 (20:44 +0000)
committermiker <miker@dcc99617-32d9-48b4-a31d-7c20da2025e4>
Tue, 11 Nov 2008 20:44:05 +0000 (20:44 +0000)
git-svn-id: svn://svn.open-ils.org/ILS/trunk@11143 dcc99617-32d9-48b4-a31d-7c20da2025e4

Open-ILS/src/c-apps/oils_cstore.c

index db9256f..d739035 100644 (file)
@@ -18,6 +18,7 @@
 #  define MODULENAME "open-ils.cstore"
 #endif
 
+#define SUBSELECT      4
 #define DISABLE_I18N   2
 #define SELECT_DISTINCT        1
 #define AND_OP_JOIN     0
@@ -1664,7 +1665,7 @@ static char* searchWHERE ( const jsonObject* search_hash, osrfHash* meta, int op
                        jsonObjectGetKey( node, "order_by" ),
                        jsonObjectGetKey( node, "limit" ),
                        jsonObjectGetKey( node, "offset" ),
-                       0
+                       SUBSELECT
                 );
 
                 buffer_fadd(sql_buf, "EXISTS ( %s )", subpred);
@@ -2235,7 +2236,7 @@ static char* SELECT (
                free(string);
        }
 
-       buffer_add(sql_buf, ";");
+       if (!(flags & SUBSELECT)) buffer_add(sql_buf, ";");
 
        free(core_class);
        if (defaultselhash) jsonObjectFree(defaultselhash);