summaryrefslogtreecommitdiffstats
path: root/sub/dec_sub.c
diff options
context:
space:
mode:
authorAman Gupta <aman@tmm1.net>2015-12-21 17:16:14 -0800
committerwm4 <wm4@nowhere>2015-12-22 13:00:05 +0100
commitf8b09658f48f307c1dc0aede3ec10e35824d62c8 (patch)
tree2c5880314c8d1a904ded9e1d82dc17a6b27a112f /sub/dec_sub.c
parentd5274d9298fe8c0f6ca0292437035cce3411bba5 (diff)
downloadmpv-f8b09658f48f307c1dc0aede3ec10e35824d62c8.tar.bz2
mpv-f8b09658f48f307c1dc0aede3ec10e35824d62c8.tar.xz
dec_sub: avoid segfault on sub_init_decoder failure
Broken by commit 687b552d. Signed-off-by: wm4 <wm4@nowhere>
Diffstat (limited to 'sub/dec_sub.c')
-rw-r--r--sub/dec_sub.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sub/dec_sub.c b/sub/dec_sub.c
index 4746b8f2cc..e29b5bf220 100644
--- a/sub/dec_sub.c
+++ b/sub/dec_sub.c
@@ -166,7 +166,8 @@ void sub_init_from_sh(struct dec_sub *sub, struct sh_stream *sh)
*sd = init_sd;
if (sub_init_decoder(sub, sd) < 0) {
- sd->driver->uninit(sd);
+ if (sd->driver && sd->driver->uninit)
+ sd->driver->uninit(sd);
talloc_free(sd);
MP_ERR(sub, "Could not find subtitle decoder for format '%s'.\n",
sh->codec ? sh->codec : "<unknown>");