Changeset: a923414323f0 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=a923414323f0
Modified Files:
        sql/storage/bat/bat_table.c
Branch: default
Log Message:

Check the result of BATjoin

or, gcc will refuse to compile


diffs (54 lines):

diff --git a/sql/storage/bat/bat_table.c b/sql/storage/bat/bat_table.c
--- a/sql/storage/bat/bat_table.c
+++ b/sql/storage/bat/bat_table.c
@@ -369,13 +369,18 @@ static rids *
 rids_join(sql_trans *tr, rids *l, sql_column *lc, rids *r, sql_column *rc)
 {
        BAT *lcb, *rcb, *s = NULL, *d = NULL;
+       gdk_return ret;
        
        lcb = full_column(tr, lc);
        rcb = full_column(tr, rc);
-       BATjoin(&s, &d, lcb, rcb, l->data, r->data, FALSE, BATcount(lcb));
+       ret = BATjoin(&s, &d, lcb, rcb, l->data, r->data, FALSE, BATcount(lcb));
        bat_destroy(l->data);
        bat_destroy(d);
-       l->data = s;
+       if (ret != GDK_SUCCEED) {
+               l->data = NULL;
+       } else {
+               l->data = s;
+       }
        full_destroy(lc, lcb);
        full_destroy(rc, rcb);
        return l;
@@ -516,6 +521,7 @@ rids_diff(sql_trans *tr, rids *l, sql_co
 {
        BAT *lcb = full_column(tr, lc), *s, *d, *rids, *diff;
        BAT *rcb = full_column(tr, rc);
+       gdk_return ret;
 
        s = BATproject(r->rids, rcb);
        full_destroy(rc, rcb);
@@ -525,14 +531,19 @@ rids_diff(sql_trans *tr, rids *l, sql_co
 
        diff = BATdiff(s, rcb, NULL, NULL, 0, BUN_NONE);
 
-       BATjoin(&rids, &d, lcb, s, NULL, diff, FALSE, BATcount(s));
+       ret = BATjoin(&rids, &d, lcb, s, NULL, diff, FALSE, BATcount(s));
        bat_destroy(diff);
        bat_destroy(d);
        full_destroy(lc, lcb);
        bat_destroy(s);
 
        bat_destroy(l->data);
-       l->data = rids;
+       if (ret != GDK_SUCCEED) {
+               l->data = NULL;
+       }
+       else {
+               l->data = rids;
+       }
        return l;
 }
 
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to