From d6a7e4898ec7aec075b0aeb056b3c883de7be60a Mon Sep 17 00:00:00 2001 From: =?utf8?q?R=C3=A9mi=20Denis-Courmont?= Date: Mon, 5 May 2008 23:30:53 +0300 Subject: [PATCH] Hide psz_(cache|config|data)dir --- include/vlc_main.h | 3 --- src/config/file.c | 20 ++++++++++---------- src/control/media_library.c | 4 +++- src/input/meta.c | 4 ++-- src/libvlc-common.c | 12 ++++++------ src/libvlc.h | 3 +++ src/modules/cache.c | 4 ++-- src/playlist/loadsave.c | 4 ++-- src/video_output/vout_intf.c | 4 ++-- 9 files changed, 30 insertions(+), 28 deletions(-) diff --git a/include/vlc_main.h b/include/vlc_main.h index f4162289c3..b6c8b8c594 100644 --- a/include/vlc_main.h +++ b/include/vlc_main.h @@ -39,9 +39,6 @@ struct libvlc_int_t /* Global properties */ char * psz_homedir; ///< user's home directory - char * psz_configdir; ///< user's configuration directory - char * psz_datadir; ///< user's data directory - char * psz_cachedir; ///< user's cache directory playlist_t *p_playlist; ///< playlist object diff --git a/src/config/file.c b/src/config/file.c index 57e55b8054..34aee4c703 100644 --- a/src/config/file.c +++ b/src/config/file.c @@ -86,14 +86,13 @@ static FILE *config_OpenConfigFile( vlc_object_t *p_obj, const char *mode ) FILE *p_readme = utf8_fopen( psz_readme, "wt" ); if( p_readme ) { - fputs( "The VLC media player configuration folder has " - "moved to comply with the XDG Base " - "Directory Specification version 0.6. Your " - "configuration has been copied to the new " - "location (", p_readme ); - fputs( p_obj->p_libvlc->psz_configdir, p_readme ); - fputs( "). You can delete this directory and " - "all its contents.", p_readme ); + fprintf( p_readme, "The VLC media player " + "configuration folder has moved to comply\n" + "with the XDG Base Directory Specification " + "version 0.6. Your\nconfiguration has been " + "copied to the new location:\n%s\nYou can " + "delete this directory and all its contents.", + libvlc_priv(p_obj->p_libvlc)->psz_configdir); fclose( p_readme ); } free( psz_readme ); @@ -402,7 +401,8 @@ static int SaveConfigFile( vlc_object_t *p_this, const char *psz_module_name, if( libvlc_priv (p_this->p_libvlc)->psz_configfile == NULL ) { - const char *psz_configdir = p_this->p_libvlc->psz_configdir; + const char *psz_configdir = + libvlc_priv(p_this->p_libvlc)->psz_configdir; if( !psz_configdir ) /* XXX: This should never happen */ { msg_Err( p_this, "no configuration directory defined" ); @@ -672,7 +672,7 @@ char *config_GetConfigFile( libvlc_int_t *p_libvlc ) { char *psz_configfile; if( asprintf( &psz_configfile, "%s" DIR_SEP CONFIG_FILE, - p_libvlc->psz_configdir ) == -1 ) + libvlc_priv (p_libvlc)->psz_configdir ) == -1 ) return NULL; return psz_configfile; } diff --git a/src/control/media_library.c b/src/control/media_library.c index e97e86fef5..518ae6d5ad 100644 --- a/src/control/media_library.c +++ b/src/control/media_library.c @@ -23,6 +23,7 @@ *****************************************************************************/ #include "libvlc_internal.h" #include +#include "libvlc.h" #include "vlc_arrays.h" /* @@ -88,7 +89,8 @@ void libvlc_media_library_load( libvlc_media_library_t * p_mlib, libvlc_exception_t * p_e ) { - const char *psz_datadir = p_mlib->p_libvlc_instance->p_libvlc_int->psz_datadir; + const char *psz_datadir = + libvlc_priv (p_mlib->p_libvlc_instance->p_libvlc_int)->psz_datadir; char * psz_uri; if( !psz_datadir ) /* XXX: i doubt that this can ever happen */ diff --git a/src/input/meta.c b/src/input/meta.c index bcb6603d6f..7abd04fd9f 100644 --- a/src/input/meta.c +++ b/src/input/meta.c @@ -246,7 +246,7 @@ static void __ArtCacheGetDirPath( vlc_object_t *p_obj, snprintf( psz_dir, PATH_MAX, "%s" DIR_SEP "art" DIR_SEP "artistalbum" DIR_SEP "%s" DIR_SEP "%s", - p_obj->p_libvlc->psz_cachedir, + libvlc_priv (p_obj->p_libvlc)->psz_cachedir, psz_artist_sanitized, psz_album_sanitized ); free( psz_album_sanitized ); free( psz_artist_sanitized ); @@ -256,7 +256,7 @@ static void __ArtCacheGetDirPath( vlc_object_t *p_obj, char * psz_title_sanitized = ArtCacheGetSanitizedFileName( psz_title ); snprintf( psz_dir, PATH_MAX, "%s" DIR_SEP "art" DIR_SEP "title" DIR_SEP "%s", - p_obj->p_libvlc->psz_cachedir, + libvlc_priv (p_obj->p_libvlc)->psz_cachedir, psz_title_sanitized ); free( psz_title_sanitized ); } diff --git a/src/libvlc-common.c b/src/libvlc-common.c index 1c81ca79e5..2a77a79c11 100644 --- a/src/libvlc-common.c +++ b/src/libvlc-common.c @@ -296,9 +296,9 @@ int libvlc_InternalInit( libvlc_int_t *p_libvlc, int i_argc, /* Set the config file stuff */ p_libvlc->psz_homedir = config_GetHomeDir(); - p_libvlc->psz_configdir = config_GetConfigDir(); - p_libvlc->psz_datadir = config_GetUserDataDir(); - p_libvlc->psz_cachedir = config_GetCacheDir(); + priv->psz_configdir = config_GetConfigDir(); + priv->psz_datadir = config_GetUserDataDir(); + priv->psz_cachedir = config_GetCacheDir(); priv->psz_configfile = config_GetCustomConfigFile( p_libvlc ); /* Check for plugins cache options */ @@ -1062,9 +1062,9 @@ int libvlc_InternalDestroy( libvlc_int_t *p_libvlc, bool b_release ) module_EndBank( p_libvlc ); FREENULL( p_libvlc->psz_homedir ); - FREENULL( p_libvlc->psz_configdir ); - FREENULL( p_libvlc->psz_datadir ); - FREENULL( p_libvlc->psz_cachedir ); + free( priv->psz_configdir ); + free( priv->psz_datadir ); + free( priv->psz_cachedir ); FREENULL( priv->psz_configfile ); var_DelCallback( p_libvlc, "key-pressed", vlc_key_to_action, p_libvlc->p_hotkeys ); diff --git a/src/libvlc.h b/src/libvlc.h index c6c2917a31..a6ba7be743 100644 --- a/src/libvlc.h +++ b/src/libvlc.h @@ -211,6 +211,9 @@ typedef struct libvlc_priv_t /* Configuration */ vlc_mutex_t config_lock; ///< config file lock char * psz_configfile; ///< location of config file + char *psz_configdir; ///< user configuration directory + char *psz_datadir; ///< user data directory + char *psz_cachedir; ///< user cache directory /* There is no real reason to keep a list of items, but not to break * everything, let's keep it */ diff --git a/src/modules/cache.c b/src/modules/cache.c index 00233efb88..67987d360c 100644 --- a/src/modules/cache.c +++ b/src/modules/cache.c @@ -106,7 +106,7 @@ void CacheLoad( vlc_object_t *p_this ) int32_t i_file_size, i_marker; libvlc_global_data_t *p_libvlc_global = vlc_global(); - psz_cachedir = p_this->p_libvlc->psz_cachedir; + psz_cachedir = libvlc_priv(p_this->p_libvlc)->psz_cachedir; if( !psz_cachedir ) /* XXX: this should never happen */ { msg_Err( p_this, "Unable to get cache directory" ); @@ -461,7 +461,7 @@ void CacheSave( vlc_object_t *p_this ) uint32_t i_file_size = 0; libvlc_global_data_t *p_libvlc_global = vlc_global(); - psz_cachedir = p_this->p_libvlc->psz_cachedir; + psz_cachedir = libvlc_priv(p_this->p_libvlc)->psz_cachedir; if( !psz_cachedir ) /* XXX: this should never happen */ { msg_Err( p_this, "unable to get cache directory" ); diff --git a/src/playlist/loadsave.c b/src/playlist/loadsave.c index 77749c4b88..e685d3b531 100644 --- a/src/playlist/loadsave.c +++ b/src/playlist/loadsave.c @@ -108,7 +108,7 @@ static void input_item_subitem_added( const vlc_event_t * p_event, int playlist_MLLoad( playlist_t *p_playlist ) { - const char *psz_datadir = p_playlist->p_libvlc->psz_datadir; + const char *psz_datadir = libvlc_priv (p_playlist->p_libvlc)->psz_datadir; char *psz_uri = NULL; input_item_t *p_input; @@ -188,7 +188,7 @@ error: int playlist_MLDump( playlist_t *p_playlist ) { - char *psz_datadir = p_playlist->p_libvlc->psz_datadir; + char *psz_datadir = libvlc_priv (p_playlist->p_libvlc)->psz_datadir; if( !config_GetInt( p_playlist, "media-library") ) return VLC_SUCCESS; if( !psz_datadir ) /* XXX: This should never happen */ { diff --git a/src/video_output/vout_intf.c b/src/video_output/vout_intf.c index 018888b9b0..f5211331ac 100644 --- a/src/video_output/vout_intf.c +++ b/src/video_output/vout_intf.c @@ -637,10 +637,10 @@ int vout_Snapshot( vout_thread_t *p_vout, picture_t *p_pic ) #else /* XXX: This saves in the data directory. Shouldn't we try saving * to psz_homedir/Desktop or something nicer ? */ - if( !val.psz_string && p_vout->p_libvlc->psz_datadir ) + if( !val.psz_string && libvlc_priv (p_vout->p_libvlc)->psz_datadir ) { if( asprintf( &val.psz_string, "%s", - p_vout->p_libvlc->psz_datadir ) == -1 ) + libvlc_priv (p_vout->p_libvlc)->psz_datadir ) == -1 ) val.psz_string = NULL; } #endif -- 2.39.5