libgsm: check return value of gsm_create & avcodec_alloc_frame()

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Paul B Mahol 2012-01-28 19:46:47 +00:00 committed by Michael Niedermayer
parent 47a5274104
commit 3ac99cdc41
1 changed files with 7 additions and 0 deletions

View File

@ -55,6 +55,8 @@ static av_cold int libgsm_encode_init(AVCodecContext *avctx) {
}
avctx->priv_data = gsm_create();
if (!avctx->priv_data)
goto error;
switch(avctx->codec_id) {
case CODEC_ID_GSM:
@ -71,8 +73,13 @@ static av_cold int libgsm_encode_init(AVCodecContext *avctx) {
avctx->coded_frame= avcodec_alloc_frame();
avctx->coded_frame->key_frame= 1;
if (!avctx->coded_frame)
goto error;
return 0;
error:
libgsm_encode_close();
return -1;
}
static av_cold int libgsm_encode_close(AVCodecContext *avctx) {