summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--apps/voice_thread.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/apps/voice_thread.c b/apps/voice_thread.c
index 3782ae8..4027fd0 100644
--- a/apps/voice_thread.c
+++ b/apps/voice_thread.c
@@ -135,8 +135,9 @@ void mp3_play_stop(void)
{
mutex_lock(&voice_mutex); /* Sync against voice_stop */
- LOGFQUEUE("mp3 >| voice Q_VOICE_STOP: 1");
- queue_send(&voice_queue, Q_VOICE_STOP, 1);
+ LOGFQUEUE("mp3 > voice Q_VOICE_STOP: 1");
+ queue_remove_from_head(&voice_queue, Q_VOICE_STOP);
+ queue_post(&voice_queue, Q_VOICE_STOP, 1);
mutex_unlock(&voice_mutex);
}
@@ -163,7 +164,8 @@ void voice_stop(void)
mutex_lock(&voice_mutex);
/* Stop the output and current clip */
- mp3_play_stop();
+ LOGFQUEUE("mp3 >| voice Q_VOICE_STOP: 1");
+ queue_send(&voice_queue, Q_VOICE_STOP, 1);
/* Careful if using sync objects in talk.c - make sure locking order is
* observed with one or the other always granted first */