Changeset: c096fcdd13d8 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=c096fcdd13d8
Modified Files:
gdk/gdk_bbp.c
gdk/gdk_value.c
Branch: Oct2014
Log Message:
Some better bat_nil handling.
diffs (49 lines):
diff --git a/gdk/gdk_bbp.c b/gdk/gdk_bbp.c
--- a/gdk/gdk_bbp.c
+++ b/gdk/gdk_bbp.c
@@ -1625,9 +1625,11 @@ BBPindex(const char *nme)
BATstore *
BBPgetdesc(bat i)
{
+ if (i == bat_nil)
+ return NULL;
if (i < 0)
i = -i;
- if (i != bat_nil && i < (bat) ATOMIC_GET(BBPsize, BBPsizeLock,
"BBPgetdesc") && i && BBP_logical(i)) {
+ if (i != 0 && i < (bat) ATOMIC_GET(BBPsize, BBPsizeLock, "BBPgetdesc")
&& i && BBP_logical(i)) {
return BBP_desc(i);
}
return NULL;
@@ -3048,7 +3050,7 @@ BBPquickdesc(bat bid, int delaccess)
{
BAT *b;
- if ( bid == 0)
+ if (bid == bat_nil || bid == 0)
return NULL;
if (bid < 0) {
GDKerror("BBPquickdesc: called with negative batid.\n");
diff --git a/gdk/gdk_value.c b/gdk/gdk_value.c
--- a/gdk/gdk_value.c
+++ b/gdk/gdk_value.c
@@ -277,14 +277,19 @@ VALisnil(const ValRecord *v)
case TYPE_sht:
return v->val.shval == sht_nil;
case TYPE_int:
- case TYPE_bat:
return v->val.ival == int_nil;
+ case TYPE_wrd:
+ return v->val.wval == wrd_nil;
case TYPE_lng:
return v->val.lval == lng_nil;
case TYPE_flt:
return v->val.fval == flt_nil;
case TYPE_dbl:
return v->val.dval == dbl_nil;
+ case TYPE_oid:
+ return v->val.oval == oid_nil;
+ case TYPE_bat:
+ return v->val.bval == bat_nil || v->val.bval == 0;
default:
break;
}
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list