summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2006-02-20 16:10:20 +0000
committerLennart Poettering <lennart@poettering.net>2006-02-20 16:10:20 +0000
commit6d0960246036564a6a8bf36b0839158cacc6a81a (patch)
tree22de5a5a69dbdd0ac268d075aceb3075a2016428 /src
parente078f084e44de3c4a87bb4fd7a0be9dbda64b604 (diff)
replace "spawn" parameter of pa_context_new() with a proper flags parameter
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@523 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'src')
-rw-r--r--src/polyp/context.c4
-rw-r--r--src/polyp/context.h10
-rw-r--r--src/polyp/def.h5
3 files changed, 12 insertions, 7 deletions
diff --git a/src/polyp/context.c b/src/polyp/context.c
index e2d9d33d..b174b505 100644
--- a/src/polyp/context.c
+++ b/src/polyp/context.c
@@ -593,7 +593,7 @@ finish:
pa_context_unref(c);
}
-int pa_context_connect(pa_context *c, const char *server, int spawn, const pa_spawn_api *api) {
+int pa_context_connect(pa_context *c, const char *server, pa_context_flags_t flags, const pa_spawn_api *api) {
int r = -1;
assert(c && c->ref >= 1 && c->state == PA_CONTEXT_UNCONNECTED);
@@ -632,7 +632,7 @@ int pa_context_connect(pa_context *c, const char *server, int spawn, const pa_sp
c->server_list = pa_strlist_prepend(c->server_list, pa_runtime_path(PA_NATIVE_DEFAULT_UNIX_SOCKET, ufn, sizeof(ufn)));
/* Wrap the connection attempts in a single transaction for sane autospawn locking */
- if (spawn && c->conf->autospawn) {
+ if (!(flags & PA_CONTEXT_NOAUTOSPAWN) && c->conf->autospawn) {
char lf[PATH_MAX];
pa_runtime_path(AUTOSPAWN_LOCK, lf, sizeof(lf));
diff --git a/src/polyp/context.h b/src/polyp/context.h
index 1c06c434..a299400a 100644
--- a/src/polyp/context.h
+++ b/src/polyp/context.h
@@ -84,11 +84,11 @@ pa_context_state_t pa_context_get_state(pa_context *c);
/** Connect the context to the specified server. If server is NULL,
connect to the default server. This routine may but will not always
return synchronously on error. Use pa_context_set_state_callback() to
-be notified when the connection is established. If spawn is non-zero
-and no specific server is specified or accessible a new daemon is
-spawned. If api is non-NULL, the functions specified in the structure
-are used when forking a new child process. */
-int pa_context_connect(pa_context *c, const char *server, int spawn, const pa_spawn_api *api);
+be notified when the connection is established. If flags doesn't have
+PA_NOAUTOSPAWN set and no specific server is specified or accessible a
+new daemon is spawned. If api is non-NULL, the functions specified in
+the structure are used when forking a new child process. */
+int pa_context_connect(pa_context *c, const char *server, pa_context_flags_t flags, const pa_spawn_api *api);
/** Terminate the context connection immediately */
void pa_context_disconnect(pa_context *c);
diff --git a/src/polyp/def.h b/src/polyp/def.h
index f8e0bed4..e94da253 100644
--- a/src/polyp/def.h
+++ b/src/polyp/def.h
@@ -64,6 +64,11 @@ typedef enum pa_operation_state {
/** An invalid index */
#define PA_INVALID_INDEX ((uint32_t) -1)
+/** Some special flags for contexts. \ since 0.8 */
+typedef enum pa_context_flags {
+ PA_CONTEXT_NOAUTOSPAWN = 1 /**< Disabled autospawning of the polypaudio daemon if required */
+} pa_context_flags_t;
+
/** The direction of a pa_stream object */
typedef enum pa_stream_direction {
PA_STREAM_NODIRECTION, /**< Invalid direction */