one unref to many ... apparently

This commit is contained in:
Bernhard Amann 2012-03-22 18:08:59 -07:00
parent 94d439b0cb
commit 03116d779e

View file

@ -705,8 +705,8 @@ Val* Manager::RecordValToIndexVal(RecordVal *r) {
} else { } else {
ListVal *l = new ListVal(TYPE_ANY); ListVal *l = new ListVal(TYPE_ANY);
for ( int j = 0 ; j < num_fields; j++ ) { for ( int j = 0 ; j < num_fields; j++ ) {
Val* rval = r->Lookup(j); //Val* rval = r->Lookup(j);
assert(rval != 0); //assert(rval != 0);
l->Append(r->LookupWithDefault(j)); l->Append(r->LookupWithDefault(j));
} }
idxval = l; idxval = l;
@ -870,7 +870,7 @@ int Manager::SendEntryTable(Filter* i, const Value* const *vals) {
Val* idxval; Val* idxval;
if ( predidx != 0 ) { if ( predidx != 0 ) {
idxval = RecordValToIndexVal(predidx); idxval = RecordValToIndexVal(predidx);
Unref(predidx); // I think there is an unref missing here. But if I insert is, it crashes :)
} else { } else {
idxval = ValueToIndexVal(filter->num_idx_fields, filter->itype, vals); idxval = ValueToIndexVal(filter->num_idx_fields, filter->itype, vals);
} }