diff options
author | Kacper Michajłow <kasper93@gmail.com> | 2024-04-24 15:42:34 +0200 |
---|---|---|
committer | Kacper Michajłow <kasper93@gmail.com> | 2024-04-24 15:52:17 +0200 |
commit | afae94cfbd375f90859aa77077ecf150ae96ee81 (patch) | |
tree | 4716185555c65182640dbd75365faf76f50f3d01 /sub/dec_sub.c | |
parent | 426be8441a81bf1a5817838c449845dcf20fca5f (diff) | |
download | mpv-afae94cfbd375f90859aa77077ecf150ae96ee81.tar.bz2 mpv-afae94cfbd375f90859aa77077ecf150ae96ee81.tar.xz |
dec_sub: fix locking for sub_ass_get_extradata
Fixes: 715feea8d82a750c3d627ee10c4fd6c6fe1fbe86
Diffstat (limited to 'sub/dec_sub.c')
-rw-r--r-- | sub/dec_sub.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/sub/dec_sub.c b/sub/dec_sub.c index 1e316687d8..c03393a007 100644 --- a/sub/dec_sub.c +++ b/sub/dec_sub.c @@ -445,12 +445,14 @@ char *sub_get_text(struct dec_sub *sub, double pts, enum sd_text_type type) char *sub_ass_get_extradata(struct dec_sub *sub) { + char *data = NULL; mp_mutex_lock(&sub->lock); if (strcmp(sub->sd->codec->codec, "ass") != 0) - return NULL; + goto done; char *extradata = sub->sd->codec->extradata; int extradata_size = sub->sd->codec->extradata_size; - char *data = talloc_strndup(NULL, extradata, extradata_size); + data = talloc_strndup(NULL, extradata, extradata_size); +done: mp_mutex_unlock(&sub->lock); return data; } |