Fix uninitialized memory usage in the RTP reorder queue causing assertion failures

This commit is contained in:
Cameron Gutman 2016-04-27 02:16:18 -04:00
parent 8846493eb4
commit 013a93bc32
2 changed files with 3 additions and 7 deletions

View File

@ -34,6 +34,8 @@ PLINKED_BLOCKING_QUEUE_ENTRY LbqFlushQueueItems(PLINKED_BLOCKING_QUEUE queueHead
int LbqInitializeLinkedBlockingQueue(PLINKED_BLOCKING_QUEUE queueHead, int sizeBound) {
int err;
memset(queueHead, 0, sizeof(*queueHead));
err = PltCreateEvent(&queueHead->containsDataEvent);
if (err != 0) {
return err;
@ -44,11 +46,7 @@ int LbqInitializeLinkedBlockingQueue(PLINKED_BLOCKING_QUEUE queueHead, int sizeB
return err;
}
queueHead->head = NULL;
queueHead->tail = NULL;
queueHead->sizeBound = sizeBound;
queueHead->currentSize = 0;
queueHead->shutdown = 0;
return 0;
}

View File

@ -2,13 +2,11 @@
#include "RtpReorderQueue.h"
void RtpqInitializeQueue(PRTP_REORDER_QUEUE queue, int maxSize, int maxQueueTimeMs) {
memset(queue, 0, sizeof(*queue));
queue->maxSize = maxSize;
queue->maxQueueTimeMs = maxQueueTimeMs;
queue->queueHead = NULL;
queue->queueTail = NULL;
queue->nextRtpSequenceNumber = UINT16_MAX;
queue->oldestQueuedTimeMs = UINT64_MAX;
queue->oldestQueuedEntry = NULL;
}
void RtpqCleanupQueue(PRTP_REORDER_QUEUE queue) {