commit 4bfef06e003980c94ef03ee507e8d4182c89aa36
parent 37a6c99a15b468d315d9cebc9d20695b02dbc2a5
Author: paulnasca <paulnasca>
Date: Mon, 30 Oct 2006 16:32:19 +0000
*** empty log message ***
Diffstat:
2 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/ChangeLog b/ChangeLog
@@ -805,5 +805,6 @@
16 Apr 2006 - Corectata o eroare care facea ca sa nu se foloseasca insertion effect la master
20 Aug 2006 - Adaugat 88200 ca rata de esantionare
14 Sep 2006 - Se afiseaza spectrul la nota cu frecventa de 440 Hz la Oscil si pentru parametru Adaptive Harmonics
+30 Oct 2006 - Adaugat un patch "standalone zombie fix stripped from Lars"
diff --git a/src/Output/JACKaudiooutput.C b/src/Output/JACKaudiooutput.C
@@ -77,9 +77,14 @@ int jackprocess(jack_nframes_t nframes,void *arg){
jack_default_audio_sample_t *outl=(jack_default_audio_sample_t *) jack_port_get_buffer (outport_left, nframes);
jack_default_audio_sample_t *outr=(jack_default_audio_sample_t *) jack_port_get_buffer (outport_right, nframes);
- pthread_mutex_lock(&jackmaster->mutex);
- jackmaster->GetAudioOutSamples(nframes,jack_get_sample_rate(jackclient),outl,outr);
- pthread_mutex_unlock(&jackmaster->mutex);
+ if (!pthread_mutex_trylock(&jackmaster->mutex)) {
+ jackmaster->GetAudioOutSamples(nframes,jack_get_sample_rate(jackclient),outl,outr);
+ pthread_mutex_unlock(&jackmaster->mutex);
+ }
+ else {
+ memset(outl, 0, sizeof(jack_default_audio_sample_t) * nframes);
+ memset(outr, 0, sizeof(jack_default_audio_sample_t) * nframes);
+ }
return(0);
};