vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Tue Aug 21 21:30:05 2012 +0300| [9cd91f9294687396aa819de7693a275608c985cc] | committer: Rémi Denis-Courmont
str_format_meta(): take playlist as parameter directly Also inline str_format(). > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=9cd91f9294687396aa819de7693a275608c985cc --- include/vlc_strings.h | 13 +++++++++---- modules/gui/qt4/input_manager.cpp | 2 +- src/input/input.c | 5 +++-- src/libvlccore.sym | 1 - src/text/strings.c | 18 ++---------------- 5 files changed, 15 insertions(+), 24 deletions(-) diff --git a/include/vlc_strings.h b/include/vlc_strings.h index 9b4d094..9159282 100644 --- a/include/vlc_strings.h +++ b/include/vlc_strings.h @@ -45,10 +45,15 @@ VLC_API size_t vlc_b64_decode_binary( uint8_t **pp_dst, const char *psz_src ); VLC_API char * vlc_b64_decode( const char *psz_src ); VLC_API char * str_format_time( const char * ); -VLC_API char * str_format_meta( vlc_object_t *, const char * ); -#define str_format_meta( a, b ) str_format_meta( VLC_OBJECT( a ), b ) -VLC_API char * str_format( vlc_object_t *, const char * ); -#define str_format( a, b ) str_format( VLC_OBJECT( a ), b ) +VLC_API char * str_format_meta( playlist_t *, const char * ); + +static inline char *str_format( playlist_t *pl, const char *fmt ) +{ + char *s1 = str_format_time( fmt ); + char *s2 = str_format_meta( pl, s1 ); + free( s1 ); + return s2; +} VLC_API void filename_sanitize( char * ); VLC_API void path_sanitize( char * ); diff --git a/modules/gui/qt4/input_manager.cpp b/modules/gui/qt4/input_manager.cpp index 45e555f..dae5ef5 100644 --- a/modules/gui/qt4/input_manager.cpp +++ b/modules/gui/qt4/input_manager.cpp @@ -484,7 +484,7 @@ void InputManager::UpdateName() /* Try to get the nowplaying */ char *format = var_InheritString( p_intf, "input-title-format" ); - char *formated = str_format_meta( p_input, format ); + char *formated = str_format_meta( THEPL, format ); free( format ); name = qfu(formated); free( formated ); diff --git a/src/input/input.c b/src/input/input.c index 88366ef..e35bd85 100644 --- a/src/input/input.c +++ b/src/input/input.c @@ -55,6 +55,7 @@ #include <vlc_fs.h> #include <vlc_strings.h> #include <vlc_modules.h> +#include <vlc_playlist.h> // FIXME /***************************************************************************** * Local prototypes @@ -3237,7 +3238,7 @@ char *input_CreateFilename( vlc_object_t *p_obj, const char *psz_path, const cha { closedir( path ); - char *psz_tmp = str_format( p_obj, psz_prefix ); + char *psz_tmp = str_format( pl_Get(p_obj), psz_prefix ); if( !psz_tmp ) return NULL; @@ -3253,7 +3254,7 @@ char *input_CreateFilename( vlc_object_t *p_obj, const char *psz_path, const cha } else { - psz_file = str_format( p_obj, psz_path ); + psz_file = str_format( pl_Get(p_obj), psz_path ); path_sanitize( psz_file ); return psz_file; } diff --git a/src/libvlccore.sym b/src/libvlccore.sym index e3b4519..a859934 100644 --- a/src/libvlccore.sym +++ b/src/libvlccore.sym @@ -402,7 +402,6 @@ stream_Read stream_ReadLine stream_UrlNew stream_vaControl -str_format str_format_meta str_format_time str_duration diff --git a/src/text/strings.c b/src/text/strings.c index 9ed515d..8db7b26 100644 --- a/src/text/strings.c +++ b/src/text/strings.c @@ -527,8 +527,7 @@ static void format_duration (char *buf, size_t len, int64_t duration) memcpy( dst+d, string, len ); \ d += len; \ } -#undef str_format_meta -char *str_format_meta( vlc_object_t *p_object, const char *string ) +char *str_format_meta( playlist_t *p_object, const char *string ) { const char *s = string; bool b_is_format = false; @@ -539,7 +538,7 @@ char *str_format_meta( vlc_object_t *p_object, const char *string ) if( !dst ) return NULL; int d = 0; - input_thread_t *p_input = playlist_CurrentInput( pl_Get(p_object) ); + input_thread_t *p_input = playlist_CurrentInput( p_object ); input_item_t *p_item = NULL; if( p_input ) { @@ -847,19 +846,6 @@ char *str_format_meta( vlc_object_t *p_object, const char *string ) #undef INSERT_STRING #undef INSERT_STRING_NO_FREE -#undef str_format -/** - * Apply str format time and str format meta - */ -char *str_format( vlc_object_t *p_this, const char *psz_src ) -{ - char *psz_buf1, *psz_buf2; - psz_buf1 = str_format_time( psz_src ); - psz_buf2 = str_format_meta( p_this, psz_buf1 ); - free( psz_buf1 ); - return psz_buf2; -} - /** * Remove forbidden, potentially forbidden and otherwise evil characters from * filenames. This includes slashes, and popular characters like colon _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
