Merge lp:~diwic/ubuntu/lucid/pulseaudio/bugfixes into lp:ubuntu/lucid/pulseaudio

Proposed by David Henningsson
Status: Needs review
Proposed branch: lp:~diwic/ubuntu/lucid/pulseaudio/bugfixes
Merge into: lp:ubuntu/lucid/pulseaudio
Diff against target: 50 lines (+27/-0)
3 files modified
debian/changelog (+6/-0)
debian/patches/0010-jack-server-shutdown.patch (+20/-0)
debian/patches/series (+1/-0)
To merge this branch: bzr merge lp:~diwic/ubuntu/lucid/pulseaudio/bugfixes
Reviewer Review Type Date Requested Status
Daniel T Chen Approve
Review via email: mp+21335@code.launchpad.net

Description of the change

LP: #538815

On sink unlinking, existing sink inputs are moved, which in turn calls
a get latency callback, which references the jack client. Therefore,
make sure the sink is unlinked before the client is closed. Failure to
do so might lead to SIGSEGV.

To post a comment you must log in.
Revision history for this message
Daniel T Chen (crimsun) wrote :

I've merged this locally, but LP is taking its sweet time handling the repo pack format upgrade to 2a.

review: Approve

Unmerged revisions

119. By David Henningsson

Fix SIGSEGV on jack server shutdown

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'debian/changelog'
2--- debian/changelog 2010-03-10 18:53:51 +0000
3+++ debian/changelog 2010-03-14 21:14:14 +0000
4@@ -1,3 +1,9 @@
5+pulseaudio (1:0.9.22~0.9.21+stable-queue-32-g8478-0ubuntu13) lucid; urgency=low
6+
7+ * Fix SIGSEGV on jack server shutdown (LP: #538815)
8+
9+ -- David Henningsson <diwic@ubuntu.com> Sun, 14 Mar 2010 22:03:00 +0100
10+
11 pulseaudio (1:0.9.22~0.9.21+stable-queue-32-g8478-0ubuntu12) lucid; urgency=low
12
13 * debian/pulseaudio.init: Remove udev from Required-* LSB headers
14
15=== added file 'debian/patches/0010-jack-server-shutdown.patch'
16--- debian/patches/0010-jack-server-shutdown.patch 1970-01-01 00:00:00 +0000
17+++ debian/patches/0010-jack-server-shutdown.patch 2010-03-14 21:14:14 +0000
18@@ -0,0 +1,20 @@
19+Index: pulseaudio-0.9.22~0.9.21+stable-queue-32-g8478/src/modules/jack/module-jack-sink.c
20+===================================================================
21+--- pulseaudio-0.9.22~0.9.21+stable-queue-32-g8478.orig/src/modules/jack/module-jack-sink.c 2010-03-14 19:55:41.344734134 +0100
22++++ pulseaudio-0.9.22~0.9.21+stable-queue-32-g8478/src/modules/jack/module-jack-sink.c 2010-03-14 20:05:54.593480089 +0100
23+@@ -475,12 +475,12 @@
24+ if (!(u = m->userdata))
25+ return;
26+
27+- if (u->client)
28+- jack_client_close(u->client);
29+-
30+ if (u->sink)
31+ pa_sink_unlink(u->sink);
32+
33++ if (u->client)
34++ jack_client_close(u->client);
35++
36+ if (u->thread) {
37+ pa_asyncmsgq_send(u->thread_mq.inq, NULL, PA_MESSAGE_SHUTDOWN, NULL, 0, NULL);
38+ pa_thread_free(u->thread);
39
40=== modified file 'debian/patches/series'
41--- debian/patches/series 2010-03-10 18:53:51 +0000
42+++ debian/patches/series 2010-03-14 21:14:14 +0000
43@@ -3,6 +3,7 @@
44 #0005-load-sample-dir-lazy.patch
45 0007-esd-honour-system-pulseaudio.patch
46 #0090-use-volume-ignore-for-analog-output.patch
47+0010-jack-server-shutdown.patch
48 0054-mute-iec958-optical-raw-for-audigyX.patch
49 0090-disable-flat-volumes.patch
50 0091-dont-load-cork-music-on-phone.patch

Subscribers

People subscribed via source and target branches