- Timestamp:
- Oct 15, 2001, 3:38:48 PM (24 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/ArchTOIPipe/Kernel/toisegment.cc
r1699 r1700 139 139 throw(ForbiddenError("TOISegment : delete Buffer with refcount>0")); 140 140 } 141 LOG(cout << "Destroying buffersegment sn0 "<< sn0 << endl); 141 142 delete[] data; 142 143 delete[] flags; … … 350 351 351 352 currentSegment = new BufferSegment(segmentSize); 353 currentSegment->incRefCount(); 352 354 signalWaitingViews(); // they can ask to be updated !! 353 355 pthread_mutex_unlock(&views_mutex); … … 402 404 for (vector<BufferSegment*>::iterator i = segments.begin(); 403 405 i != segments.end(); i++) { 404 if (((*i)->sn0+(*i)->bufferSize <= firstNeeded) && ((*i)->getRefCount() == 0)) { 406 //LOG(cout << "Updating : rc = " << (*i)->getRefCount() << " sn0 = " << (*i)->sn0 << endl;); 407 if (((*i)->sn0+(*i)->bufferSize <= firstNeeded) && ((*i)->getRefCount() == 1)) { 405 408 clean = true; 409 (*i)->decRefCount(); 410 delete (*i); 406 411 j = i; 407 412 } 408 413 } 414 j++; 409 415 if (clean) { 410 416 segments.erase(segments.begin(),j);
Note:
See TracChangeset
for help on using the changeset viewer.