aviobuf: check context before using it
Avoid a possible null pointer dereference. CC: libav-stable@libav.org Bug-Id: CID 1135769
This commit is contained in:
@@ -965,7 +965,7 @@ int ffio_open_dyn_packet_buf(AVIOContext **s, int max_packet_size)
|
|||||||
|
|
||||||
int avio_close_dyn_buf(AVIOContext *s, uint8_t **pbuffer)
|
int avio_close_dyn_buf(AVIOContext *s, uint8_t **pbuffer)
|
||||||
{
|
{
|
||||||
DynBuffer *d = s->opaque;
|
DynBuffer *d;
|
||||||
int size;
|
int size;
|
||||||
static const char padbuf[FF_INPUT_BUFFER_PADDING_SIZE] = {0};
|
static const char padbuf[FF_INPUT_BUFFER_PADDING_SIZE] = {0};
|
||||||
int padding = 0;
|
int padding = 0;
|
||||||
@@ -983,6 +983,7 @@ int avio_close_dyn_buf(AVIOContext *s, uint8_t **pbuffer)
|
|||||||
|
|
||||||
avio_flush(s);
|
avio_flush(s);
|
||||||
|
|
||||||
|
d = s->opaque;
|
||||||
*pbuffer = d->buffer;
|
*pbuffer = d->buffer;
|
||||||
size = d->size;
|
size = d->size;
|
||||||
av_free(d);
|
av_free(d);
|
||||||
|
Reference in New Issue
Block a user