]> git.sesse.net Git - vlc/commitdiff
Use config_Get*Dir
authorRémi Denis-Courmont <rem@videolan.org>
Mon, 5 May 2008 20:16:50 +0000 (23:16 +0300)
committerRémi Denis-Courmont <rem@videolan.org>
Mon, 5 May 2008 20:34:22 +0000 (23:34 +0300)
modules/gui/skins2/win32/win32_factory.cpp
modules/gui/skins2/x11/x11_factory.cpp
modules/misc/gnutls.c
modules/misc/lua/vlc.c

index 16b70b3b3631b3230abacd5e612258af4220167a..47d4556c90c21e65b974f02dfdafa542f7ef98f1 100644 (file)
@@ -225,8 +225,9 @@ bool Win32Factory::init()
     }
 
     // Initialize the resource path
-    m_resourcePath.push_back( (string)getIntf()->p_libvlc->psz_datadir +
-                               "\\skins" );
+    char *datadir = config_GetUserDataDir();
+    m_resourcePath.push_back( (string)datadir + "\\skins" );
+    free( datadir );
     m_resourcePath.push_back( (string)config_GetDataDir() +
                               "\\skins" );
     m_resourcePath.push_back( (string)config_GetDataDir() +
index 02fcc178c59d8d4b8c8042d0d686eea3d48466f7..815a169a47e91e29543a4e38f89b3ef519e432ea 100644 (file)
@@ -71,8 +71,9 @@ bool X11Factory::init()
                                      ConnectionNumber( pDisplay ) );
 
     // Initialize the resource path
-    m_resourcePath.push_back( (string)getIntf()->p_libvlc->psz_datadir +
-                              + "/skins2" );
+    char *datadir = config_GetUserDataDir();
+    m_resourcePath.push_back( (string)datadir + "/skins2" );
+    free( datadir );
     m_resourcePath.push_back( (string)"share/skins2" );
     m_resourcePath.push_back( (string)config_GetDataDir () + "/skins2" );
 
index 88fcc32700d9fcffe84e50cf49d8dda05145ed44..1f6be91df328f4afd719ab3ba5c95c08cfdfa04f 100644 (file)
@@ -643,13 +643,6 @@ static int OpenClient (vlc_object_t *obj)
 
     p_sys->session.b_handshaked = false;
 
-    const char *homedir = obj->p_libvlc->psz_datadir,
-               *datadir = config_GetDataDir ();
-    size_t l1 = strlen (homedir), l2 = strlen (datadir);
-    char path[((l1 > l2) ? l1 : l2) + sizeof ("/ca-certificates.crt")];
-    //                              > sizeof ("/ssl/private")
-    //                              > sizeof ("/ssl/certs")
-
     i_val = gnutls_certificate_allocate_credentials (&p_sys->x509_cred);
     if (i_val != 0)
     {
@@ -658,23 +651,32 @@ static int OpenClient (vlc_object_t *obj)
         goto error;
     }
 
-    sprintf (path, "%s/ssl", homedir);
-    utf8_mkdir (path, 0755);
-
-    sprintf (path, "%s/ssl/certs", homedir);
-    gnutls_Addx509Directory (VLC_OBJECT (p_session),
-                             p_sys->x509_cred, path, false);
+    char *userdir = config_GetUserDataDir ();
+    if (userdir != NULL)
+    {
+        char path[strlen (userdir) + sizeof ("/ssl/private")];
+        sprintf (path, "%s/ssl", userdir);
+        utf8_mkdir (path, 0755);
+
+        sprintf (path, "%s/ssl/certs", userdir);
+        gnutls_Addx509Directory (VLC_OBJECT (p_session),
+                                 p_sys->x509_cred, path, false);
+        sprintf (path, "%s/ssl/private", userdir);
+        gnutls_Addx509Directory (VLC_OBJECT (p_session), p_sys->x509_cred,
+                                 path, true);
+        free (userdir);
+    }
 
-    sprintf (path, "%s/ca-certificates.crt", datadir);
-    gnutls_Addx509File (VLC_OBJECT (p_session),
-                        p_sys->x509_cred, path, false);
+    const char *datadir = config_GetDataDir ();
+    {
+        char path[strlen (datadir) + sizeof ("/ca-certificates.crt")];
+        sprintf (path, "%s/ca-certificates.crt", datadir);
+        gnutls_Addx509File (VLC_OBJECT (p_session),
+                            p_sys->x509_cred, path, false);
+    }
     p_session->pf_handshake = gnutls_HandshakeAndValidate;
     /*p_session->pf_handshake = gnutls_ContinueHandshake;*/
 
-    sprintf (path, "%s/ssl/private", homedir);
-    gnutls_Addx509Directory (VLC_OBJECT (p_session), p_sys->x509_cred,
-                             path, true);
-
     i_val = gnutls_init (&p_sys->session.session, GNUTLS_CLIENT);
     if (i_val != 0)
     {
index 2c356ee1cc3f495cd7fb43b83e68135af48b6b32..1e81acd2886b42b27b5ca4dda80d2a646dc7288c 100644 (file)
@@ -164,12 +164,16 @@ int vlclua_homedir( lua_State *L )
 }
 int vlclua_configdir( lua_State *L )
 {
-    lua_pushstring( L, vlclua_get_this( L )->p_libvlc->psz_configdir );
+    char *dir = config_GetConfigDir();
+    lua_pushstring( L, dir );
+    free( dir );
     return 1;
 }
 int vlclua_cachedir( lua_State *L )
 {
-    lua_pushstring( L, vlclua_get_this( L )->p_libvlc->psz_cachedir );
+    char *dir = config_GetCacheDir();
+    lua_pushstring( L, dir );
+    free( dir );
     return 1;
 }
 int vlclua_datadir_list( lua_State *L )
@@ -400,9 +404,17 @@ int vlclua_dir_list( vlc_object_t *p_this, const char *luadirname,
                      char **ppsz_dir_list )
 {
     int i = 0;
+    char *datadir = config_GetUserDataDir();
+    if( datadir == NULL )
+        return VLC_ENOMEM;
+
     if( asprintf( &ppsz_dir_list[i], "%s" DIR_SEP "lua" DIR_SEP "%s",
-                   p_this->p_libvlc->psz_datadir, luadirname ) < 0 )
+                   datadir, luadirname ) < 0 )
+    {
+        free( datadir );
         return VLC_ENOMEM;
+    }
+    free( datadir );
     i++;
 
 #   if defined(__APPLE__) || defined(SYS_BEOS) || defined(WIN32)