/* Put the items in the playlist node */
for( size_t i = 0; i < filenames.GetCount(); i++ )
{
- char *psz_local = NULL;
- const char *psz_utf8 = wxDnDFromLocale( filenames[i], psz_local );
+ const char *psz_utf8 = wxDnDFromLocale( filenames[i] );
playlist_item_t *p_item =
playlist_ItemNew( p->p_playlist, psz_utf8, psz_utf8 );
playlist_NodeAddItem( p->p_playlist, p_item, p->i_current_view,
p_dest, PLAYLIST_PREPARSE, i_pos );
- wxDnDLocaleFree( psz_utf8, psz_local );
+ wxDnDLocaleFree( psz_utf8 );
}
/* FIXME: having this Rebuild() is dirty */
for( size_t i = 0; i < filenames.GetCount(); i++ )
{
- char *psz_local = NULL;
- const char *psz_utf8 = wxDnDFromLocale( filenames[i], psz_local );
+ char *psz_utf8 = wxDnDFromLocale( filenames[i] );
playlist_Add( p_playlist, psz_utf8, psz_utf8,
PLAYLIST_APPEND | ((i | b_enqueue) ? 0 : PLAYLIST_GO),
PLAYLIST_END );
- wxDnDLocaleFree( psz_utf8, psz_local );
+ wxDnDLocaleFree( psz_utf8 );
}
vlc_object_release( p_playlist );
/* From Locale functions to use for File Drop targets ... go figure */
#ifdef wxUSE_UNICODE
-inline const char *wxDnDFromLocale( const wxChar *stupid, char *psz_local )
+static inline char *wxDnDFromLocale( const wxChar *stupid )
{
/*
* FIXME: this is yet another awful and ugly bug-to-bug work-around
for (braindead = stupid; *braindead; braindead++);
size_t i = (braindead - stupid);
- psz_local = (char *)malloc( i + 1 );
+ char *psz_local = (char *)malloc( i + 1 );
do
psz_local[i] = (char)stupid[i];
while (i--);
- const char *psz_utf8 = FromLocale( psz_local );
+ char *psz_utf8 = FromLocaleDup( psz_local );
+ free( psz_local );
return psz_utf8;
}
+# define wxDnDLocaleFree( string ) free( string )
#else
-# define wxDnDFromLocale( string, a ) wxFromLocale( string )
-#endif
-#ifdef wxUSE_UNICODE
-# define wxDnDLocaleFree( string, a ) LocaleFree( string ); free( a )
-#else
-# define wxDnDLocaleFree( string, a ) wxLocaleFree( string )
+# define wxDnDFromLocale( string ) wxFromLocale( string )
+# define wxDnDLocaleFree( string ) wxLocaleFree( string )
#endif
#define WRAPCOUNT 80