summaryrefslogtreecommitdiff
path: root/recordmydesktop/src/cache_audio.c
diff options
context:
space:
mode:
Diffstat (limited to 'recordmydesktop/src/cache_audio.c')
-rw-r--r--recordmydesktop/src/cache_audio.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/recordmydesktop/src/cache_audio.c b/recordmydesktop/src/cache_audio.c
index 99465de..afd08cf 100644
--- a/recordmydesktop/src/cache_audio.c
+++ b/recordmydesktop/src/cache_audio.c
@@ -41,9 +41,13 @@ void *CacheSoundBuffer(ProgData *pdata){
pthread_mutex_init(&tmut,NULL);
pthread_cond_wait(&pdata->pause_cond,&tmut);
}
-
- if(pdata->sound_buffer==NULL)
+ if(pdata->sound_buffer==NULL){
+ pdata->v_enc_thread_waiting=1;
pthread_cond_wait(&pdata->sound_data_read,&smut);
+ pdata->v_enc_thread_waiting=0;
+ }
+ if(pdata->sound_buffer==NULL || !pdata->running)
+ break;
pthread_mutex_lock(&pdata->sound_buffer_mutex);
buff=pdata->sound_buffer;
© All Rights Reserved