From: RĂ©mi Denis-Courmont Date: Wed, 13 Apr 2011 18:10:49 +0000 (+0300) Subject: AVI: use Windows ANSI code page rather than ISO 8859-1 (fixes #4678) X-Git-Tag: 1.2.0-pre1~3066 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=4b07339900792ca7bc122992bc2dae538ac512aa;p=vlc AVI: use Windows ANSI code page rather than ISO 8859-1 (fixes #4678) --- diff --git a/modules/demux/avi/avi.c b/modules/demux/avi/avi.c index dbb88fa196..df525ad225 100644 --- a/modules/demux/avi/avi.c +++ b/modules/demux/avi/avi.c @@ -90,6 +90,11 @@ static int Demux_UnSeekable( demux_t * ); #define __ABS( x ) ( (x) < 0 ? (-(x)) : (x) ) +static char *FromACP( const char *str ) +{ + return FromCharset(vlc_pgettext("GetACP", "CP1252"), str, strlen(str)); +} + typedef struct { vlc_fourcc_t i_fourcc; @@ -592,7 +597,7 @@ static int Open( vlc_object_t * p_this ) continue; } if( p_strn ) - fmt.psz_description = FromLatin1( p_strn->p_str ); + fmt.psz_description = FromACP( p_strn->p_str ); if( tk->p_out_muxed == NULL ) tk->p_es = es_out_Add( p_demux->out, &fmt ); TAB_APPEND( p_sys->i_track, p_sys->track, tk ); @@ -2494,7 +2499,7 @@ static void AVI_MetaLoad( demux_t *p_demux, avi_chunk_STRING_t *p_strz = AVI_ChunkFind( p_info, p_dsc[i].i_id, 0 ); if( !p_strz ) continue; - char *psz_value = FromLatin1( p_strz->p_str ); + char *psz_value = FromACP( p_strz->p_str ); if( !psz_value ) continue; @@ -2609,7 +2614,7 @@ static void AVI_ExtractSubtitle( demux_t *p_demux, i_size -= 6; if( !psz_description ) - psz_description = p_strn ? FromLatin1( p_strn->p_str ) : NULL; + psz_description = p_strn ? FromACP( p_strn->p_str ) : NULL; char *psz_name; if( asprintf( &psz_name, "subtitle%d.srt", p_sys->i_attachment ) <= 0 ) psz_name = NULL;