mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
lavc/avuienc: fix mem leak in case of init failure
Signed-off-by: Lukasz Marek <lukasz.m.luki2@gmail.com>
This commit is contained in:
parent
23e91a1bfd
commit
e29153f414
@ -25,16 +25,10 @@
|
||||
|
||||
static av_cold int avui_encode_init(AVCodecContext *avctx)
|
||||
{
|
||||
avctx->coded_frame = av_frame_alloc();
|
||||
|
||||
if (avctx->width != 720 || avctx->height != 486 && avctx->height != 576) {
|
||||
av_log(avctx, AV_LOG_ERROR, "Only 720x486 and 720x576 are supported.\n");
|
||||
return AVERROR(EINVAL);
|
||||
}
|
||||
if (!avctx->coded_frame) {
|
||||
av_log(avctx, AV_LOG_ERROR, "Could not allocate frame.\n");
|
||||
return AVERROR(ENOMEM);
|
||||
}
|
||||
if (!(avctx->extradata = av_mallocz(24 + FF_INPUT_BUFFER_PADDING_SIZE)))
|
||||
return AVERROR(ENOMEM);
|
||||
avctx->extradata_size = 24;
|
||||
@ -45,6 +39,11 @@ static av_cold int avui_encode_init(AVCodecContext *avctx)
|
||||
avctx->extradata[19] = 1;
|
||||
}
|
||||
|
||||
avctx->coded_frame = av_frame_alloc();
|
||||
if (!avctx->coded_frame) {
|
||||
av_log(avctx, AV_LOG_ERROR, "Could not allocate frame.\n");
|
||||
return AVERROR(ENOMEM);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user