Disc reading libs want ANSI rather than UTF-8 paths - fixes #1560
authorRémi Denis-Courmont <rem@videolan.org>
Wed, 30 Apr 2008 17:04:59 +0000 (20:04 +0300)
committerRémi Denis-Courmont <rem@videolan.org>
Wed, 30 Apr 2008 17:05:28 +0000 (20:05 +0300)
modules/access/cdda.c
modules/access/dvdnav.c
modules/access/dvdread.c
modules/access/vcd/vcd.c
modules/access/vcdx/access.c
modules/access/vcdx/vcd.c

index 2735bd9..13c3f33 100644 (file)
@@ -40,6 +40,7 @@
 #include <vlc_input.h>
 #include <vlc_access.h>
 #include <vlc_meta.h>
+#include <vlc_charset.h>
 
 #include <vlc_codecs.h> /* For WAVEHEADER */
 #include "vcd/cdrom.h"
@@ -158,7 +159,7 @@ static int Open( vlc_object_t *p_this )
             return VLC_EGENERIC;
         }
     }
-    else psz_name = strdup( p_access->psz_path );
+    else psz_name = ToLocaleDup( p_access->psz_path );
 
 #ifdef WIN32
     if( psz_name[0] && psz_name[1] == ':' &&
index f9df8aa..0fbce33 100644 (file)
@@ -33,6 +33,7 @@
 #include <vlc_input.h>
 #include <vlc_access.h>
 #include <vlc_demux.h>
+#include <vlc_charset.h>
 
 #include <vlc_interface.h>
 
@@ -189,7 +190,7 @@ static int Open( vlc_object_t *p_this )
         }
     }
     else
-        psz_name = strdup( p_demux->psz_path );
+        psz_name = ToLocaleDup( p_demux->psz_path );
 
 #ifdef WIN32
     if( psz_name[0] && psz_name[1] == ':' &&
index f6cfad6..41774d1 100644 (file)
@@ -33,6 +33,7 @@
 #include <vlc/vlc.h>
 #include <vlc_input.h>
 #include <vlc_access.h>
+#include <vlc_charset.h>
 
 #include <vlc_interface.h>
 
@@ -203,7 +204,7 @@ static int Open( vlc_object_t *p_this )
         }
     }
     else
-        psz_name = strdup( p_demux->psz_path );
+        psz_name = ToLocaleDup( p_demux->psz_path );
 
 #ifdef WIN32
     if( psz_name[0] && psz_name[1] == ':' &&
index 4492cd2..97ef305 100644 (file)
@@ -94,7 +94,7 @@ static int Open( vlc_object_t *p_this )
 {
     access_t     *p_access = (access_t *)p_this;
     access_sys_t *p_sys;
-    char *psz_dup = strdup( p_access->psz_path );
+    char *psz_dup = ToLocaleDup( p_access->psz_path );
     char *psz;
     int i_title = 0;
     int i_chapter = 0;
index d28ad46..c54d6d1 100644 (file)
@@ -37,6 +37,7 @@
 #include <vlc_interface.h>
 #include <vlc_input.h>
 #include <vlc_access.h>
+#include <vlc_charset.h>
 #include "vlc_keys.h"
 
 #include <cdio/cdio.h>
@@ -759,7 +760,7 @@ vcd_Open( vlc_object_t *p_this, const char *psz_dev )
 
     if( !psz_dev ) return NULL;
 
-    actual_dev=strdup(psz_dev);
+    actual_dev= ToLocaleDup(psz_dev);
     if ( vcdinfo_open(&p_vcdobj, &actual_dev, DRIVER_UNKNOWN, NULL) !=
          VCDINFO_OPEN_VCD) {
       free(actual_dev);
index b89b5e7..83a6d1b 100644 (file)
@@ -34,6 +34,7 @@
 #endif
 
 #include <vlc/vlc.h>
+#include <vlc_charset.h>
 
 /*****************************************************************************
  * Exported prototypes