Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc
Commits
4fe6d5bc
Commit
4fe6d5bc
authored
May 04, 2008
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix memleak on Windows, fix locale on Linux
parent
09b452a3
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
10 deletions
+11
-10
src/config/core.c
src/config/core.c
+11
-10
No files found.
src/config/core.c
View file @
4fe6d5bc
...
@@ -731,34 +731,35 @@ static char *config_GetFooDir (libvlc_int_t *p_libvlc, const char *xdg_name,
...
@@ -731,34 +731,35 @@ static char *config_GetFooDir (libvlc_int_t *p_libvlc, const char *xdg_name,
#if defined(WIN32) || defined(__APPLE__) || defined(SYS_BEOS)
#if defined(WIN32) || defined(__APPLE__) || defined(SYS_BEOS)
char
*
psz_parent
=
config_GetUserDir
();
char
*
psz_parent
=
config_GetUserDir
();
if
(
!
psz_parent
)
psz_parent
=
p_libvlc
->
psz_homedir
;
if
(
asprintf
(
&
psz_dir
,
"%s"
DIR_SEP
CONFIG_DIR
,
psz_parent
)
==
-
1
)
if
(
asprintf
(
&
psz_dir
,
"%s"
DIR_SEP
CONFIG_DIR
,
psz_parent
)
==
-
1
)
psz_dir
=
NULL
;
psz_dir
=
NULL
;
free
(
psz_parent
);
(
void
)
xdg_name
;
(
void
)
xdg_default
;
(
void
)
xdg_name
;
(
void
)
xdg_default
;
return
psz_dir
;
#else
#else
char
var
[
sizeof
(
"XDG__HOME"
)
+
strlen
(
xdg_name
)],
*
psz_env
;
char
var
[
sizeof
(
"XDG__HOME"
)
+
strlen
(
xdg_name
)],
*
psz_env
;
/* XDG Base Directory Specification - Version 0.6 */
/* XDG Base Directory Specification - Version 0.6 */
snprintf
(
var
,
sizeof
(
var
),
"XDG_%s_HOME"
,
xdg_name
);
snprintf
(
var
,
sizeof
(
var
),
"XDG_%s_HOME"
,
xdg_name
);
psz_env
=
getenv
(
var
);
psz_env
=
FromLocaleDup
(
getenv
(
var
)
);
if
(
psz_env
)
if
(
psz_env
)
{
{
if
(
asprintf
(
&
psz_dir
,
"%s/vlc"
,
psz_env
)
==
-
1
)
if
(
asprintf
(
&
psz_dir
,
"%s/vlc"
,
psz_env
)
==
-
1
)
return
NULL
;
psz_dir
=
NULL
;
return
psz_dir
;
goto
out
;
}
}
psz_env
=
getenv
(
"HOME"
);
psz_env
=
FromLocaleDup
(
getenv
(
"HOME"
)
);
/* not part of XDG spec but we want a sensible fallback */
/* not part of XDG spec but we want a sensible fallback */
if
(
!
psz_env
)
if
(
!
psz_env
)
psz_env
=
p_libvlc
->
psz_homedir
;
psz_env
=
config_GetHomeDir
()
;
if
(
asprintf
(
&
psz_dir
,
"%s/%s/vlc"
,
psz_env
,
xdg_default
)
==
-
1
)
if
(
asprintf
(
&
psz_dir
,
"%s/%s/vlc"
,
psz_env
,
xdg_default
)
==
-
1
)
return
NULL
;
psz_dir
=
NULL
;
return
psz_dir
;
out:
free
(
psz_env
);
#endif
#endif
return
psz_dir
;
}
}
/**
/**
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment