]> git.sesse.net Git - vlc/blobdiff - src/config/dirs.c
Update _WIN32_IE to IE 5.01
[vlc] / src / config / dirs.c
index abeb537011618cc67262079429aaa66ee17700e5..c8cfc822d1fded55ee43757ff99d67dc94871c3e 100644 (file)
 #include <vlc_common.h>
 
 #if defined( WIN32 )
-# define _WIN32_IE IE5
+# ifndef _WIN32_IE
+#  define _WIN32_IE 0x0501
+# endif
 # include <w32api.h>
+#ifndef UNDER_CE
 # include <direct.h>
+#endif
 # include <shlobj.h>
 #else
 # include <unistd.h>
@@ -52,6 +56,7 @@
 # define DIR_SHARE "share"
 #endif
 
+
 /**
  * config_GetDataDir: find directory where shared data is installed
  *
@@ -64,8 +69,7 @@ const char *config_GetDataDir( void )
 
     if( *path == '\0' )
     {
-        snprintf( path, sizeof( path ), "%s" DIR_SEP DIR_SHARE,
-                  vlc_global()->psz_vlcpath );
+        snprintf( path, sizeof( path ), "%s" DIR_SEP DIR_SHARE, psz_vlcpath );
         path[sizeof( path ) - 1] = '\0';
     }
     return path;
@@ -83,12 +87,15 @@ static const char *GetDir( bool b_appdata, bool b_common_appdata )
     wchar_t wdir[MAX_PATH];
 
 # if defined (UNDER_CE)
+    /*There are some errors in cegcc headers*/
+#undef SHGetSpecialFolderPath
+    BOOL WINAPI SHGetSpecialFolderPath(HWND,LPWSTR,int,BOOL);
     if( SHGetSpecialFolderPath( NULL, wdir, CSIDL_APPDATA, 1 ) )
 # else
     /* Get the "Application Data" folder for the current user */
     if( S_OK == SHGetFolderPathW( NULL,
-              (b_appdata ? CSIDL_APPDATA :
-               (b_common_appdata ? CSIDL_PERSONAL : CSIDL_COMMON_APPDATA))
+              ( b_appdata ? CSIDL_APPDATA :
+               ( b_common_appdata ? CSIDL_COMMON_APPDATA: CSIDL_PERSONAL ) )
               | CSIDL_FLAG_CREATE,
                                   NULL, SHGFP_TYPE_CURRENT, wdir ) )
 # endif
@@ -155,7 +162,7 @@ const char *config_GetConfDir( void )
     if( *path == '\0' )
     {
         snprintf( path, sizeof( path ), "%s"DIR_SEP DIR_SHARE, /* FIXME: Duh? */
-                  vlc_global()->psz_vlcpath );
+                  psz_vlcpath );
         path[sizeof( path ) - 1] = '\0';
     }
     return path;
@@ -228,5 +235,15 @@ char *config_GetUserDataDir( void )
  */
 char *config_GetCacheDir( void )
 {
+#if defined(__APPLE__)
+    char *psz_dir;
+    const char *psz_parent = GetDir (true, false);
+
+    if( asprintf( &psz_dir, "%s" DIR_SEP CACHES_DIR, psz_parent ) == -1 )
+        psz_dir = NULL;
+
+    return psz_dir;
+#else
     return config_GetFooDir ("CACHE", ".cache");
+#endif
 }