mirror of
https://gitlab.freedesktop.org/pulseaudio/pulseaudio.git
synced 2025-11-05 13:29:57 -05:00
add new pa_get_state_dir() function, move pa_strnull() here
git-svn-id: file:///home/lennart/svn/public/pulseaudio/branches/glitch-free@2257 fefdeb5f-60dc-0310-8127-8f9354f1896f
This commit is contained in:
parent
dcf7173489
commit
cdb273de90
2 changed files with 36 additions and 1 deletions
|
|
@ -1093,6 +1093,35 @@ int pa_unlock_lockfile(const char *fn, int fd) {
|
|||
return r;
|
||||
}
|
||||
|
||||
char *pa_get_state_dir(void) {
|
||||
const char *e;
|
||||
char *d;
|
||||
|
||||
if ((e = getenv("PULSE_STATE_PATH")))
|
||||
d = pa_xstrdup(e);
|
||||
else {
|
||||
char h[PATH_MAX];
|
||||
|
||||
if (!pa_get_home_dir(h, sizeof(h))) {
|
||||
pa_log_error("Failed to get home directory.");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
d = pa_sprintf_malloc("%s/.pulse", h);
|
||||
}
|
||||
|
||||
mkdir(d, 0755);
|
||||
|
||||
if (access(d, W_OK) == 0)
|
||||
return d;
|
||||
|
||||
pa_log_error("Failed to set up state directory %s", d);
|
||||
|
||||
pa_xfree(d);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Try to open a configuration file. If "env" is specified, open the
|
||||
* value of the specified environment variable. Otherwise look for a
|
||||
* file "local" in the home directory or a file "global" in global
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#include <pulsecore/gccmacro.h>
|
||||
#include <pulse/gccmacro.h>
|
||||
#include <pulsecore/macro.h>
|
||||
|
||||
struct timeval;
|
||||
|
|
@ -67,6 +67,10 @@ static inline const char *pa_yes_no(pa_bool_t b) {
|
|||
return b ? "yes" : "no";
|
||||
}
|
||||
|
||||
static inline const char *pa_strnull(const char *x) {
|
||||
return x ? x : "(null)";
|
||||
}
|
||||
|
||||
char *pa_split(const char *c, const char*delimiters, const char **state);
|
||||
char *pa_split_spaces(const char *c, const char **state);
|
||||
|
||||
|
|
@ -129,4 +133,6 @@ void pa_close_pipe(int fds[2]);
|
|||
|
||||
char *pa_readlink(const char *p);
|
||||
|
||||
char *pa_get_state_dir(void);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue