#endif
}
-/**
- * Extract a token from string.
- * It is a replacement for strsep if not present.
- */
-char *vlc_strsep( char **ppsz_string, const char *psz_delimiters )
-{
- char *psz_string = *ppsz_string;
- if( !psz_string )
- return NULL;
-
- char *p = strpbrk( psz_string, psz_delimiters );
- if( !p )
- {
- *ppsz_string = NULL;
- return psz_string;
- }
- *p++ = '\0';
-
- *ppsz_string = p;
- return psz_string;
-}
-
/*****************************************************************************
* vlc_*dir_wrapper: wrapper under Windows to return the list of drive letters
* when called with an empty argument or just '\'
if( !p_dir )
return NULL;
p_dir->p_real_dir = NULL;
+#if defined(UNDER_CE)
+ p_dir->i_drives = NULL;
+#else
p_dir->i_drives = GetLogicalDrives();
+#endif
return (void *)p_dir;
}
struct _wdirent *vlc_wreaddir( void *_p_dir )
{
vlc_DIR *p_dir = (vlc_DIR *)_p_dir;
- unsigned int i;
DWORD i_drives;
if ( p_dir->p_real_dir != NULL )
/* Drive letters mode */
i_drives = p_dir->i_drives;
+#ifdef UNDER_CE
+ swprintf( p_dir->dd_dir.d_name, L"\\");
+ p_dir->dd_dir.d_namlen = wcslen(p_dir->dd_dir.d_name);
+#else
+ unsigned int i;
if ( !i_drives )
return NULL; /* end */
swprintf( p_dir->dd_dir.d_name, L"%c:\\", 'A' + i );
p_dir->dd_dir.d_namlen = wcslen(p_dir->dd_dir.d_name);
p_dir->i_drives &= ~(1UL << i);
+#endif
return &p_dir->dd_dir;
}