X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fconfig%2Fdirs.c;h=22a5bdcab54f9fa0c4a07a7a50abebc1d45a96bf;hb=6b35f6ff09419006d8af86cfb507fc644669a118;hp=d490975f5aefe596bf5d5b8338f66fcd2b31ba20;hpb=28e52ddb9b8a1ae76eba086114ecf0bca90383ee;p=vlc diff --git a/src/config/dirs.c b/src/config/dirs.c index d490975f5a..22a5bdcab5 100644 --- a/src/config/dirs.c +++ b/src/config/dirs.c @@ -30,17 +30,15 @@ #include "configuration.h" +#undef config_GetDataDir /** - * Determines the shared data directory + * Determines the shared architecture-independent data directory * - * @return a string (always succeeds). Needs to be freed. + * @return a string or NULL. Use free() to release. */ -char *__config_GetDataDir( vlc_object_t *p_obj ) +char *config_GetDataDir( vlc_object_t *p_obj ) { - char *psz_path = config_GetPsz( p_obj, "data-path" ); - if( psz_path && *psz_path ) - return psz_path; - free( psz_path ); - return strdup( config_GetDataDirDefault() ); + char *psz_path = var_InheritString( p_obj, "data-path" ); + return psz_path ? psz_path : config_GetDataDirDefault(); }