Hi. - MultiFramedRTPSource::networkReadHandler1() gets freePacket when it is called. (now fSavedPacketFree==False) - usually it will call fReorderingBuffer->freePacket(bPacket); either directly or indirectly at the end, - however if packetReadWasIncomplete function exits earlier. At this point fPacketReadInProgress holds the allocated packet, and fSavedPacketFree==False - if close() is called at this point MultiFramedRTPSource::doStopGettingFrames() will call ReorderingPacketBuffer::reset(), but since fSavedPacketFree==False, delete fSavedPacket won’t happen.
Suggested patch: @@ -105,6 +105,10 @@ } void MultiFramedRTPSource::doStopGettingFrames() { + if (fPacketReadInProgress != NULL) { + fReorderingBuffer->freePacket(fPacketReadInProgress); + fPacketReadInProgress = NULL; + } envir().taskScheduler().unscheduleDelayedTask(nextTask()); fRTPInterface.stopNetworkReading(); fReorderingBuffer->reset(); _______________________________________________ live-devel mailing list live-devel@lists.live555.com http://lists.live555.com/mailman/listinfo/live-devel