summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authoryounix <web2p10@wemelug.de>2010-11-04 13:46:28 +0100
committeryounix <web2p10@wemelug.de>2010-11-04 13:46:28 +0100
commit8f432c6da4374265675541779ae4ae648e07df5f (patch)
tree0a5c68dbe2e6096bf2bb0fe23bbe4f89bd85d919 /src
parentf61c045172252232f58dafa6208f7afe16487b82 (diff)
parent3d25681eb65376f35a051196dfd316c6fcbc7fa9 (diff)
downloadpa-sink-ctl-8f432c6da4374265675541779ae4ae648e07df5f.tar.gz
pa-sink-ctl-8f432c6da4374265675541779ae4ae648e07df5f.tar.bz2
pa-sink-ctl-8f432c6da4374265675541779ae4ae648e07df5f.zip
Merge branch 'master' of gitorious.org:pa-sink-ctl/pa-sink-ctl
Diffstat (limited to 'src')
-rw-r--r--src/interface.c4
-rw-r--r--src/pa-sink-ctl.c3
2 files changed, 7 insertions, 0 deletions
diff --git a/src/interface.c b/src/interface.c
index 11ba6be..83f6e39 100644
--- a/src/interface.c
+++ b/src/interface.c
@@ -16,6 +16,7 @@
#define H_MSG_BOX 3
extern pa_context* context;
+extern gboolean context_ready;
static WINDOW *menu_win;
static WINDOW *msg_win;
@@ -167,6 +168,9 @@ gboolean get_input(gpointer data)
gint c;
gboolean volume_increment = TRUE;
+ if (!context_ready)
+ return FALSE;
+
c = wgetch(menu_win);
switch (c) {
case 'k':
diff --git a/src/pa-sink-ctl.c b/src/pa-sink-ctl.c
index 02a58ab..102a78c 100644
--- a/src/pa-sink-ctl.c
+++ b/src/pa-sink-ctl.c
@@ -8,6 +8,7 @@
#include "pa-sink-ctl.h"
pa_context *context = NULL;
+gboolean context_ready = FALSE;
static gboolean info_callbacks_finished = TRUE;
static gboolean info_callbacks_blocked = FALSE;
@@ -69,6 +70,7 @@ static void subscribe_cb(pa_context *c, pa_subscription_event_type_t t, guint32
void context_state_callback(pa_context *c, gpointer userdata)
{
static pa_operation *o = NULL;
+ context_ready = FALSE;
switch (pa_context_get_state(c)) {
case PA_CONTEXT_CONNECTING:
status("connecting...");
@@ -86,6 +88,7 @@ void context_state_callback(pa_context *c, gpointer userdata)
g_assert((o = pa_context_subscribe(c, (pa_subscription_mask_t) (
PA_SUBSCRIPTION_MASK_SINK | PA_SUBSCRIPTION_MASK_SINK_INPUT
), NULL, NULL)));
+ context_ready = TRUE;
status("ready to process events.");
break;
case PA_CONTEXT_FAILED: