summaryrefslogtreecommitdiffstats
path: root/command.c
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2012-08-08 21:45:37 +0200
committerwm4 <wm4@nowhere>2012-08-08 21:45:37 +0200
commitb4dd2194d5c2540583becf6c021d8eb0f52cddc0 (patch)
treea28779bbb2862813e74e84bc2683f7408df58ab4 /command.c
parent7fd43b0bcd5abdcda0a6fe99abb46651f81ec84d (diff)
downloadmpv-b4dd2194d5c2540583becf6c021d8eb0f52cddc0.tar.bz2
mpv-b4dd2194d5c2540583becf6c021d8eb0f52cddc0.tar.xz
command: fix subtitle selection display
Commit 9c02ae7e9510897 set the sh variable (see diff) to the struct of type sh_sub instead the one of sh_stream. Unfortunately this didn't crash, and merely made the OSD show "unknown" for the language. Commit 804bf91570a24b9 accidentally removed the display of the track title. Add it back.
Diffstat (limited to 'command.c')
-rw-r--r--command.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/command.c b/command.c
index d9cd83a862..66ff8d131a 100644
--- a/command.c
+++ b/command.c
@@ -1576,12 +1576,16 @@ static int mp_property_sub(m_option_t *prop, int action, void *arg,
return M_PROPERTY_OK;
}
if (opts->sub_id >= 0 && mpctx->d_sub && mpctx->d_sub->sh) {
- struct sh_stream *sh = mpctx->d_sub->sh;
+ struct sh_stream *sh = ((struct sh_sub *)mpctx->d_sub->sh)->gsh;
char *lang = demuxer_stream_lang(mpctx->demuxer, sh);
if (!lang)
lang = talloc_strdup(NULL, mp_gtext("unknown"));
- *(char **) arg = talloc_asprintf(NULL, "(%d) %s", opts->sub_id,
- lang);
+ if (sh->title)
+ *(char **)arg = talloc_asprintf(NULL, "(%d) %s (\"%s\")",
+ opts->sub_id, lang, sh->title);
+ else
+ *(char **) arg = talloc_asprintf(NULL, "(%d) %s", opts->sub_id,
+ lang);
talloc_free(lang);
return M_PROPERTY_OK;
}