mirror of
https://github.com/mpv-player/mpv
synced 2025-01-29 11:12:56 +00:00
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.
This commit is contained in:
parent
7fd43b0bcd
commit
b4dd2194d5
10
command.c
10
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;
|
||||
}
|
||||
|
@ -136,7 +136,7 @@ typedef struct demux_stream {
|
||||
// ---- mov -----
|
||||
unsigned int ss_mul, ss_div;
|
||||
// ---- stream header ----
|
||||
void *sh;
|
||||
void *sh; // points to sh_audio or sh_video
|
||||
} demux_stream_t;
|
||||
|
||||
typedef struct demuxer_info {
|
||||
|
Loading…
Reference in New Issue
Block a user