From 64a481d8732cc45b01b70d18cf95e1374b7dcba7 Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Mon, 2 Nov 2009 17:12:00 +0100 Subject: {decoder,player}_control: removed duplicate wakeups Don't wake up the target thread in every iteration of the wait() loop. Waking it up once, right after the command has been set, must be enough. --- src/output_control.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/output_control.c') diff --git a/src/output_control.c b/src/output_control.c index 973baa46..c54ce4f9 100644 --- a/src/output_control.c +++ b/src/output_control.c @@ -40,7 +40,6 @@ struct notify audio_output_client_notify; static void ao_command_wait(struct audio_output *ao) { while (ao->command != AO_COMMAND_NONE) { - g_cond_signal(ao->cond); g_mutex_unlock(ao->mutex); notify_wait(&audio_output_client_notify); g_mutex_lock(ao->mutex); @@ -51,6 +50,7 @@ static void ao_command(struct audio_output *ao, enum audio_output_command cmd) { assert(ao->command == AO_COMMAND_NONE); ao->command = cmd; + g_cond_signal(ao->cond); ao_command_wait(ao); } -- cgit v1.2.3