Commit 0ddb1b01 authored by Laurent Aimar's avatar Laurent Aimar

Do not call decode_URI on constant string.

parent fe587068
...@@ -259,18 +259,18 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path, ...@@ -259,18 +259,18 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path,
vlc_subfn_t *result = NULL; /* unsorted results */ vlc_subfn_t *result = NULL; /* unsorted results */
char **result2; /* sorted results */ char **result2; /* sorted results */
const char *psz_fname = psz_name_org; if( !psz_name_org )
if( !psz_fname )
return NULL; return NULL;
if( !strncmp( psz_fname, "file://", 7 ) ) if( !strncmp( psz_name_org, "file://", 7 ) )
{ {
psz_fname += 7; psz_name_org += 7;
if( !strncmp( psz_fname, "localhost", 9 ) ) if( !strncmp( psz_name_org, "localhost", 9 ) )
psz_fname += 9; psz_name_org += 9;
} }
psz_fname = decode_URI( psz_fname ); char *psz_fname = decode_URI_duplicate( psz_name_org );
if( !psz_fname )
return NULL;
/* extract filename & dirname from psz_fname */ /* extract filename & dirname from psz_fname */
tmp = strrchr( psz_fname, DIR_SEP_CHAR ); tmp = strrchr( psz_fname, DIR_SEP_CHAR );
...@@ -289,7 +289,10 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path, ...@@ -289,7 +289,10 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path,
char *psz_cwd = NULL; char *psz_cwd = NULL;
#endif #endif
if( !psz_cwd ) if( !psz_cwd )
{
free( psz_fname );
return NULL; return NULL;
}
f_fname = strdup( psz_fname ); f_fname = strdup( psz_fname );
if( asprintf( &f_dir, "%s%c", psz_cwd, DIR_SEP_CHAR ) == -1 ) if( asprintf( &f_dir, "%s%c", psz_cwd, DIR_SEP_CHAR ) == -1 )
...@@ -300,6 +303,7 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path, ...@@ -300,6 +303,7 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path,
{ {
free( f_fname ); free( f_fname );
free( f_dir ); free( f_dir );
free( psz_fname );
return NULL; return NULL;
} }
...@@ -313,6 +317,7 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path, ...@@ -313,6 +317,7 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path,
free( f_dir ); free( f_dir );
free( f_fname_noext ); free( f_fname_noext );
free( f_fname_trim ); free( f_fname_trim );
free( psz_fname );
return NULL; return NULL;
} }
...@@ -428,6 +433,7 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path, ...@@ -428,6 +433,7 @@ char **subtitles_Detect( input_thread_t *p_this, char *psz_path,
free( f_dir ); free( f_dir );
free( f_fname_trim ); free( f_fname_trim );
free( f_fname_noext ); free( f_fname_noext );
free( psz_fname );
if( !result ) if( !result )
return NULL; return NULL;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment