lavc: fix ff_alloc_packet()

Regression introduced in 740b9ff44.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
This commit is contained in:
Paul B Mahol 2012-07-13 01:09:43 +00:00
parent 81fe2e8b36
commit d3abbb1d13
1 changed files with 2 additions and 0 deletions

View File

@ -1017,6 +1017,7 @@ int ff_alloc_packet2(AVCodecContext *avctx, AVPacket *avpkt, int size)
return AVERROR(EINVAL); return AVERROR(EINVAL);
} }
if (avctx) {
av_assert0(!avpkt->data || avpkt->data != avctx->internal->byte_buffer); av_assert0(!avpkt->data || avpkt->data != avctx->internal->byte_buffer);
if (!avpkt->data || avpkt->size < size) { if (!avpkt->data || avpkt->size < size) {
av_fast_padded_malloc(&avctx->internal->byte_buffer, &avctx->internal->byte_buffer_size, size); av_fast_padded_malloc(&avctx->internal->byte_buffer, &avctx->internal->byte_buffer_size, size);
@ -1024,6 +1025,7 @@ int ff_alloc_packet2(AVCodecContext *avctx, AVPacket *avpkt, int size)
avpkt->size = avctx->internal->byte_buffer_size; avpkt->size = avctx->internal->byte_buffer_size;
avpkt->destruct = NULL; avpkt->destruct = NULL;
} }
}
if (avpkt->data) { if (avpkt->data) {
void *destruct = avpkt->destruct; void *destruct = avpkt->destruct;