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