This is an automated email from the git hooks/post-receive script. It was
generated because of a push to the "PulseAudio Sound Server" repository.

The stable-queue branch has been updated
      from  bc7314f14e934750194da5582e7317e8de74e504 (commit)

- Log -----------------------------------------------------------------
d519ca4 jack: Prevent crash on jack server shutdown
-----------------------------------------------------------------------

Summary of changes:
 src/modules/jack/module-jack-sink.c   |    7 ++++---
 src/modules/jack/module-jack-source.c |    6 +++---
 2 files changed, 7 insertions(+), 6 deletions(-)

-----------------------------------------------------------------------

commit d519ca41d7eb90c4e2d46c424aa2430593063878
Author: David Henningsson <[email protected]>
Date:   Mon May 3 11:41:47 2010 +0200

    jack: Prevent crash on jack server shutdown

diff --git a/src/modules/jack/module-jack-sink.c 
b/src/modules/jack/module-jack-sink.c
index 4a0d384..08a8bef 100644
--- a/src/modules/jack/module-jack-sink.c
+++ b/src/modules/jack/module-jack-sink.c
@@ -147,6 +147,7 @@ static int sink_process_msg(pa_msgobject *o, int code, void 
*data, int64_t offse
                 pa_sample_spec ss;
 
                 /* Humm, we're not RUNNING, hence let's write some silence */
+                /* This can happen if we're paused, or during shutdown (when 
we're unlinked but jack is still running). */
 
                 ss = u->sink->sample_spec;
                 ss.channels = 1;
@@ -480,12 +481,12 @@ void pa__done(pa_module*m) {
     if (!(u = m->userdata))
         return;
 
-    if (u->client)
-        jack_client_close(u->client);
-
     if (u->sink)
         pa_sink_unlink(u->sink);
 
+    if (u->client)
+        jack_client_close(u->client);
+
     if (u->thread) {
         pa_asyncmsgq_send(u->thread_mq.inq, NULL, PA_MESSAGE_SHUTDOWN, NULL, 
0, NULL);
         pa_thread_free(u->thread);
diff --git a/src/modules/jack/module-jack-source.c 
b/src/modules/jack/module-jack-source.c
index 2d152b3..6b12840 100644
--- a/src/modules/jack/module-jack-source.c
+++ b/src/modules/jack/module-jack-source.c
@@ -425,12 +425,12 @@ void pa__done(pa_module*m) {
     if (!(u = m->userdata))
         return;
 
-    if (u->client)
-        jack_client_close(u->client);
-
     if (u->source)
         pa_source_unlink(u->source);
 
+    if (u->client)
+        jack_client_close(u->client);
+
     if (u->thread) {
         pa_asyncmsgq_send(u->thread_mq.inq, NULL, PA_MESSAGE_SHUTDOWN, NULL, 
0, NULL);
         pa_thread_free(u->thread);

-- 
hooks/post-receive
PulseAudio Sound Server
_______________________________________________
pulseaudio-commits mailing list
[email protected]
https://tango.0pointer.de/mailman/listinfo/pulseaudio-commits

Reply via email to