From 92fb098b738440fb04fa95eec0bb14badc5611d5 Mon Sep 17 00:00:00 2001 From: Ilkka Ollakka Date: Tue, 11 May 2010 17:52:54 +0300 Subject: [PATCH] taglib: use decoded path --- modules/meta_engine/taglib.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/modules/meta_engine/taglib.cpp b/modules/meta_engine/taglib.cpp index 521197fbc5..7beab4476d 100644 --- a/modules/meta_engine/taglib.cpp +++ b/modules/meta_engine/taglib.cpp @@ -330,23 +330,27 @@ static int ReadMeta( vlc_object_t* p_this) demux_t* p_demux = p_demux_meta->p_demux; vlc_meta_t* p_meta; FileRef f; + char *psz_path = decode_URI_duplicate( p_demux->psz_path ); p_demux_meta->p_meta = NULL; + if( !psz_path ) + return VLC_ENOMEM; #if defined(WIN32) || defined (UNDER_CE) wchar_t wpath[MAX_PATH + 1]; - if( !MultiByteToWideChar( CP_UTF8, 0, p_demux->psz_path, -1, wpath, MAX_PATH) ) + if( !MultiByteToWideChar( CP_UTF8, 0, psz_path, -1, wpath, MAX_PATH) ) return VLC_EGENERIC; wpath[MAX_PATH] = L'\0'; f = FileRef( wpath ); #else - const char* local_name = ToLocale( p_demux->psz_path ); + const char* local_name = ToLocale( psz_path ); if( !local_name ) return VLC_EGENERIC; f = FileRef( local_name ); LocaleFree( local_name ); #endif + free( psz_path ); if( f.isNull() ) return VLC_EGENERIC; -- 2.39.5