]> git.tdb.fi Git - xinema.git/commitdiff
Substitute "unknown" if channel language can't be determined
authorMikko Rasa <tdb@tdb.fi>
Sat, 17 Oct 2015 14:00:37 +0000 (17:00 +0300)
committerMikko Rasa <tdb@tdb.fi>
Sat, 17 Oct 2015 14:00:37 +0000 (17:00 +0300)
Not all container formats have the appropriate tags.

source/xinestream.cpp

index 8099f3b3eb453b0fd4f8ccf9b661b19166d420d9..7317f7c8838449e8e901676ea4b8ebce4799760a 100644 (file)
@@ -172,16 +172,20 @@ void XineStream::update_channels()
        audio_channels.resize(n_audio);
        for(unsigned i=0; i<n_audio; ++i)
        {
-               xine_get_audio_lang(stream, i, langbuf);
-               audio_channels[i].assign(langbuf);
+               if(xine_get_audio_lang(stream, i, langbuf))
+                       audio_channels[i].assign(langbuf);
+               else
+                       audio_channels[i].assign("unknown");
        }
 
        unsigned n_spu = xine_get_stream_info(stream, XINE_STREAM_INFO_MAX_SPU_CHANNEL);
        spu_channels.resize(n_spu);
        for(unsigned i=0; i<n_spu; ++i)
        {
-               xine_get_spu_lang(stream, i, langbuf);
-               spu_channels[i].assign(langbuf);
+               if(xine_get_spu_lang(stream, i, langbuf))
+                       spu_channels[i].assign(langbuf);
+               else
+                       spu_channels[i].assign("unknown");
        }
 
        signal_channels_changed.emit();