Changeset: 5a5b10610183 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5a5b10610183
Modified Files:
MonetDB5/src/modules/kernel/batcalc.mx
Branch: default
Log Message:
merge with Jun2010: more reference counting fixes
diffs (56 lines):
diff -r 77a6207dcdb7 -r 5a5b10610183 MonetDB5/src/modules/kernel/batcalc.mx
--- a/MonetDB5/src/modules/kernel/batcalc.mx Sat Jun 19 21:14:10 2010 +0200
+++ b/MonetDB5/src/modules/kernel/batcalc.mx Sun Jun 20 11:49:34 2010 +0200
@@ -787,7 +787,8 @@
bn = r;
}
BBPkeepref(*ret = bn->batCacheid);
- BBPreleaseref(b->batCacheid);
+ if (b != bn)
+ BBPreleaseref(b->batCacheid);
return res;
}
@@ -836,7 +837,8 @@
bn = r;
}
BBPkeepref(*ret = bn->batCacheid);
- BBPreleaseref(b->batCacheid);
+ if (b != bn)
+ BBPreleaseref(b->batCacheid);
return res;
}
@-
@@ -1016,8 +1018,10 @@
msg = batac...@2_@3...@4_@5(bn,b,right);
BBPkeepref(*ret = bn->batCacheid);
- BBPreleaseref(b->batCacheid);
- BBPreleaseref(right->batCacheid);
+ if (b != bn)
+ BBPreleaseref(b->batCacheid);
+ if (right != bn)
+ BBPreleaseref(right->batCacheid);
return msg;
}
@@ -1069,7 +1073,8 @@
if (!(bn->batDirty&2)) bn = BATsetaccess(bn, BAT_READ);
BBPkeepref(*ret = bn->batCacheid);
- BBPreleaseref(b->batCacheid);
+ if (b != bn)
+ BBPreleaseref(b->batCacheid);
return MAL_SUCCEED;
}
@@ -1121,7 +1126,8 @@
if (!(bn->batDirty&2)) bn = BATsetaccess(bn, BAT_READ);
BBPkeepref(*ret = bn->batCacheid);
- BBPreleaseref(b->batCacheid);
+ if (b != bn)
+ BBPreleaseref(b->batCacheid);
return MAL_SUCCEED;
}
@c
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list