<div dir="ltr">Agree. My original patch not fixing root cause of this problem. Below is more details and sample. Need to decide what the best way to fix this problem and I will try to fix. Should we convert all EIT strings to UTF-8 ? If yes then possibly somewhere in libdvbpsi (as it may obtain character set) ? <div>As I understand vlc GUI accept only UTF8 strings, right ?<div>How does it work now and how it should work (correct) ?<br><div><br></div><div><br></div><div>--- additional details</div><div><br></div><div>TS Sample (54MB). This is ATSC full TS dump. Obtained in Miami, FL, USA. 671Mhz. just run latest vlc with this file to see the problem.</div><div><br></div><div><a href="https://drive.google.com/file/d/10HwVhyXk6TQK5-s60FnlZcircJ0_9tc7/view?usp=sharing">https://drive.google.com/file/d/10HwVhyXk6TQK5-s60FnlZcircJ0_9tc7/view?usp=sharing</a><br></div><div><br></div><div>backtrace and hexdump of psz_val below. It contains "Abismo de pasión" where symbol "ó" is 0xF3 (for example in windows-1252 charset). </div><div><br></div><div><div>#0  0x00007ffff73ff77f in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:58</div><div>#1  0x00007ffff740137a in __GI_abort () at abort.c:89</div><div>#2  0x00007ffff73f7b47 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x7ffff7190310 "psz_val == NULL || IsUTF8( psz_val )", file=file@entry=0x7ffff71901e0 "input/meta.c", line=line@entry=127, function=function@entry=0x7ffff71903a8 <__PRETTY_FUNCTION__.11296> "vlc_meta_Set") at assert.c:92</div><div>#3  0x00007ffff73f7bf2 in __GI___assert_fail (assertion=assertion@entry=0x7ffff7190310 "psz_val == NULL || IsUTF8( psz_val )", file=file@entry=0x7ffff71901e0 "input/meta.c", line=line@entry=127, function=function@entry=0x7ffff71903a8 <__PRETTY_FUNCTION__.11296> "vlc_meta_Set")</div><div>    at assert.c:101</div><div>#4  0x00007ffff7124da8 in vlc_meta_Set (p_meta=<optimized out>, meta_type=meta_type@entry=vlc_meta_ESNowPlaying, psz_val=psz_val@entry=0x7fffa0c56860 "Abismo de pasi\363n") at input/meta.c:127</div><div>#5  0x00007ffff71187de in EsOutProgramEpg (p_epg=<optimized out>, i_group=<optimized out>, out=<optimized out>) at input/es_out.c:1408</div><div>#6  0x00007ffff71187de in EsOutControlLocked (args=<optimized out>, i_query=<optimized out>, out=<optimized out>) at input/es_out.c:2592</div><div>#7  0x00007ffff71187de in EsOutControl (out=<optimized out>, i_query=<optimized out>, args=<optimized out>) at input/es_out.c:2863</div><div>#8  0x00007ffff7119009 in es_out_vaControl (args=0x7fffad1a37a0, i_query=<optimized out>, out=<optimized out>) at ../include/vlc_es_out.h:143</div><div>#9  0x00007ffff7119009 in es_out_Control (out=<optimized out>, i_query=<optimized out>) at ../include/vlc_es_out.h:152</div><div>#10 0x00007ffff711afee in ControlLocked (args=<optimized out>, i_query=<optimized out>, p_out=<optimized out>) at input/es_out_timeshift.c:664</div><div>#11 0x00007ffff711afee in Control (p_out=<optimized out>, i_query=<optimized out>, args=<optimized out>) at input/es_out_timeshift.c:762</div><div>#12 0x00007fffc7ae6ed9 in es_out_vaControl (args=0x7fffad1a3900, i_query=14, out=<optimized out>) at ../include/vlc_es_out.h:143</div><div>#13 0x00007fffc7ae6ed9 in es_out_Control (out=<optimized out>, i_query=i_query@entry=14) at ../include/vlc_es_out.h:152</div><div>#14 0x00007fffc7ae8767 in ATSC_EIT_Callback (p_pid=0x7fffa0c035b0, p_eit=0x7fffa0c256d0) at demux/mpeg/ts_psip.c:505</div><div>#15 0x00007fffc78bf8c2 in  () at /usr/lib/x86_64-linux-gnu/libdvbpsi.so.10</div><div>#16 0x00007fffc78b5f35 in dvbpsi_packet_push () at /usr/lib/x86_64-linux-gnu/libdvbpsi.so.10</div><div>#17 0x00007fffc7ae888b in ts_psip_Packet_Push (p_pid=<optimized out>, p_pktbuffer=<optimized out>) at demux/mpeg/ts_psip.c:90</div><div>#18 0x00007fffc7adc8fc in Demux (p_demux=p_demux@entry=0x7fffa0c028e0) at demux/mpeg/ts.c:737</div><div>#19 0x00007ffff7121de5 in demux_Demux (p_demux=<optimized out>) at ../include/vlc_demux.h:354</div><div>#20 0x00007ffff7121de5 in MainLoopDemux (pb_changed=<synthetic pointer>, p_input=0x7fffa80009e0) at input/input.c:570</div><div>#21 0x00007ffff7121de5 in MainLoop (p_input=p_input@entry=0x7fffa80009e0, b_interactive=b_interactive@entry=true) at input/input.c:716</div><div>#22 0x00007ffff71245bf in Run (data=0x7fffa80009e0) at input/input.c:506</div><div>#23 0x00007ffff799c6da in start_thread (arg=0x7fffad1a4700) at pthread_create.c:456</div><div>#24 0x00007ffff74d2d7f in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:105</div></div><div><br></div><div><div>(gdb) x/16b psz_val</div><div>0x7fffa0c56860: 0x41    0x62    0x69    0x73    0x6d    0x6f    0x20    0x64</div><div>0x7fffa0c56868: 0x65    0x20    0x70    0x61    0x73    0x69    0xf3    0x6e</div></div><div><br></div><div><br></div><div><br></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-11-21 11:04 GMT-05:00 Francois Cartegnie <span dir="ltr"><<a href="mailto:fcvlcdev@free.fr" target="_blank">fcvlcdev@free.fr</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Le 20/11/2017 à 22:52, Abylay Ospan a écrit :<br>
>  {<br>
>      free( p_meta->ppsz_meta[meta_type] );<br>
> -    assert( psz_val == NULL || IsUTF8( psz_val ) );<br>
> -    p_meta->ppsz_meta[meta_type] = psz_val ? strdup( psz_val ) : NULL;<br>
> +    p_meta->ppsz_meta[meta_type] = (psz_val && IsUTF8( psz_val )) ? strdup( psz_val ) : NULL;<br>
>  }<br>
><br>
>  const char *vlc_meta_Get( const vlc_meta_t *p_meta, vlc_meta_type_t meta_type )<br>
><br>
<br>
The right way to fix that kind of issues is to open a ticket and submit<br>
a sample, not to hide the bug.<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Francois Cartegnie<br>
VideoLAN - VLC Developer<br>
______________________________<wbr>_________________<br>
vlc-devel mailing list<br>
To unsubscribe or modify your subscription options:<br>
<a href="https://mailman.videolan.org/listinfo/vlc-devel" rel="noreferrer" target="_blank">https://mailman.videolan.org/<wbr>listinfo/vlc-devel</a></font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><span style="font-size:12.8000001907349px">Abylay Ospan,</span><br style="font-size:12.8000001907349px"><span style="font-size:12.8000001907349px">NetUP Inc.</span><br style="font-size:12.8000001907349px"><a href="http://www.netup.tv/" style="font-size:12.8000001907349px" target="_blank">http://www.netup.tv</a><br></div></div>
</div>