# HG changeset patch # User reimar # Date 1330194391 0 # Node ID e92fb6cc0836da3b4cbe541763995f15b6802a50 # Parent 82f0b612bb52aedea6137fdf3003984c1cbda148 Fix DVDs showing the subtitle language as "unknown" for a long time. diff -r 82f0b612bb52 -r e92fb6cc0836 libmpdemux/demuxer.c --- a/libmpdemux/demuxer.c Fri Feb 24 23:34:55 2012 +0000 +++ b/libmpdemux/demuxer.c Sat Feb 25 18:26:31 2012 +0000 @@ -1815,14 +1815,14 @@ if (id < 0 || id >= MAX_S_STREAMS) return -1; sh = d->s_streams[id]; - if (!sh) - return -1; - if (sh->lang) { + if (sh && sh->lang) { av_strlcpy(buf, sh->lang, buf_len); return 0; } req.type = stream_ctrl_sub; - req.id = sh->sid; + // assume 1:1 mapping so we can show the language of + // DVD subs even when we have not yet created the stream. + req.id = sh ? sh->sid : id; if (stream_control(d->stream, STREAM_CTRL_GET_LANG, &req) == STREAM_OK) { av_strlcpy(buf, req.buf, buf_len); return 0;