<div dir="ltr">fixes bug: <a href="https://trac.videolan.org/vlc/ticket/11813">https://trac.videolan.org/vlc/ticket/11813</a><br>mkv spec: <a href="https://www.matroska.org/technical/specs/index.html#languages">https://www.matroska.org/technical/specs/index.html#languages</a><br>---<br> modules/demux/mkv/matroska_segment_parse.cpp | 6 ++++--<br> 1 file changed, 4 insertions(+), 2 deletions(-)<br><br>diff --git a/modules/demux/mkv/matroska_segment_parse.cpp b/modules/demux/mkv/matroska_segment_parse.cpp<br>index a4138d1d06..3303b6a041 100644<br>--- a/modules/demux/mkv/matroska_segment_parse.cpp<br>+++ b/modules/demux/mkv/matroska_segment_parse.cpp<br>@@ -379,8 +379,10 @@ void matroska_segment_c::ParseTrackEntry( KaxTrackEntry *m )<br>         }<br>         E_CASE( KaxTrackLanguage, lang )<br>         {<br>-            free( vars.tk->fmt.psz_language );<br>-            vars.tk->fmt.psz_language = strdup( std::string( lang ).c_str() );<br>+            std::string const& slang ( lang );<br>+            free(vars.tk->fmt.psz_language);<br>+            vars.tk->fmt.psz_language = strndup( slang.c_str (),<br>+                    slang.find_first_of( '-' ) );<br>             debug( vars, "Track Language=`%s'", vars.tk->fmt.psz_language );<br>         }<br>         E_CASE( KaxCodecID, codecid )<br>-- <br>2.12.2<br></div>