projects
/
platform
/
upstream
/
libav.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e9aeaa6
)
dvdsubdec: Do not leak on failure path
author
Luca Barbato
<lu_zero@gentoo.org>
Sun, 9 Nov 2014 07:48:47 +0000
(08:48 +0100)
committer
Luca Barbato
<lu_zero@gentoo.org>
Mon, 12 Jan 2015 23:16:40 +0000
(
00:16
+0100)
CC: libav-stable@libav.org
Bug-Id: CID 1198262
(cherry picked from commit
d466d82faaf6e0e57a3a4be5e38e3902ef251ac3
)
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
libavcodec/dvdsubdec.c
patch
|
blob
|
history
diff --git
a/libavcodec/dvdsubdec.c
b/libavcodec/dvdsubdec.c
index
5d6db41
..
15abac0
100644
(file)
--- a/
libavcodec/dvdsubdec.c
+++ b/
libavcodec/dvdsubdec.c
@@
-503,6
+503,7
@@
static av_cold int dvdsub_init(AVCodecContext *avctx)
{
DVDSubContext *ctx = avctx->priv_data;
char *data, *cur;
+ int ret = 0;
if (!avctx->extradata || !avctx->extradata_size)
return 0;
@@
-527,16
+528,18
@@
static av_cold int dvdsub_init(AVCodecContext *avctx)
} else if (!strncmp("size:", cur, 5)) {
int w, h;
if (sscanf(cur + 5, "%dx%d", &w, &h) == 2) {
-
int
ret = ff_set_dimensions(avctx, w, h);
+ ret = ff_set_dimensions(avctx, w, h);
if (ret < 0)
-
return ret
;
+
goto fail
;
}
}
cur += strcspn(cur, "\n\r");
cur += strspn(cur, "\n\r");
}
+
+fail:
av_free(data);
- return
0
;
+ return
ret
;
}
AVCodec ff_dvdsub_decoder = {