[vlc-devel] [PATCH] fix abort (crash) if EPG string is not UTF8
Jean-Baptiste Kempf
jb at videolan.org
Tue Nov 21 17:03:27 CET 2017
Hello Abylay,
Could you be nice enough to share a sample with us?
Thanks a lot.
On Mon, 20 Nov 2017, at 22:52, Abylay Ospan wrote:
> libvlc aborted if non english ATSC EPG strings arrived:
>
> in vlc_meta_Set (p_meta=<optimized out>,
> meta_type=meta_type at entry=vlc_meta_ESNowPlaying,
> psz_val=psz_val at entry=0x7fffb5054530 "Pok\351mon") at input/meta.c:131
> in EsOutProgramEpg (p_epg=<optimized out>, i_group=<optimized out>,
> out=<optimized out>) at input/es_out.c:1408
> ...
> in ATSC_EIT_Callback (p_pid=0x7fffb500b690, p_eit=0x7fffb5045710) at
> demux/mpeg/ts_psip.c:505
>
> Better just not display this string than abort.
> ---
> src/input/meta.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/src/input/meta.c b/src/input/meta.c
> index 241b926079..80325b1249 100644
> --- a/src/input/meta.c
> +++ b/src/input/meta.c
> @@ -124,8 +124,7 @@ void vlc_meta_Delete( vlc_meta_t *m )
> void vlc_meta_Set( vlc_meta_t *p_meta, vlc_meta_type_t meta_type, const
> char *psz_val )
> {
> free( p_meta->ppsz_meta[meta_type] );
> - assert( psz_val == NULL || IsUTF8( psz_val ) );
> - p_meta->ppsz_meta[meta_type] = psz_val ? strdup( psz_val ) : NULL;
> + p_meta->ppsz_meta[meta_type] = (psz_val && IsUTF8( psz_val )) ?
> strdup( psz_val ) : NULL;
> }
>
> const char *vlc_meta_Get( const vlc_meta_t *p_meta, vlc_meta_type_t
> meta_type )
> --
> 2.11.0
>
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
--
Jean-Baptiste Kempf - President
+33 672 704 734
More information about the vlc-devel
mailing list