[pulseaudio] 01/02: Pull upstream commit a527711 to hopefully fix LP: #1425447
Luke Yelavich
themuso-guest at moszumanska.debian.org
Thu Oct 29 02:17:13 UTC 2015
This is an automated email from the git hooks/post-receive script.
themuso-guest pushed a commit to branch ubuntu
in repository pulseaudio.
commit 4c7946b88bbe3465a256ebb032b7b3c20addb296
Author: Luke Yelavich <themuso at ubuntu.com>
Date: Tue Oct 13 10:16:32 2015 +1100
Pull upstream commit a527711 to hopefully fix LP: #1425447
---
debian/changelog | 6 +++
...ys-remove-freed-module-from-modules_pendi.patch | 46 ++++++++++++++++++++++
debian/patches/series | 3 ++
3 files changed, 55 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index a14ba8a..fed4b60 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+pulseaudio (1:6.0-0ubuntu13) UNRELEASED; urgency=medium
+
+ * Pull upstream commit a527711 to hopefully fix LP: #1425447
+
+ -- Luke Yelavich <themuso at ubuntu.com> Tue, 13 Oct 2015 10:15:01 +1100
+
pulseaudio (1:6.0-0ubuntu12) wily; urgency=medium
* debian/rules: disable bluez4 support, it's not useful and leads to
diff --git a/debian/patches/0101-module-Always-remove-freed-module-from-modules_pendi.patch b/debian/patches/0101-module-Always-remove-freed-module-from-modules_pendi.patch
new file mode 100644
index 0000000..0254bcf
--- /dev/null
+++ b/debian/patches/0101-module-Always-remove-freed-module-from-modules_pendi.patch
@@ -0,0 +1,46 @@
+From a527711528ce8f9e1b1f73957fa8281f9126b370 Mon Sep 17 00:00:00 2001
+From: David Henningsson <david.henningsson at canonical.com>
+Date: Thu, 3 Sep 2015 09:43:01 +0200
+Subject: [PATCH] module: Always remove freed module from
+ modules_pending_unload
+
+pa_module_free is called from more than one place, not all of
+these places correctly removed the module from the
+modules_pending_unload array, potentially causing a dangling pointer
+in that array.
+
+Signed-off-by: David Henningsson <david.henningsson at canonical.com>
+---
+ src/pulsecore/module.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
+
+Index: pulseaudio/src/pulsecore/module.c
+===================================================================
+--- pulseaudio.orig/src/pulsecore/module.c
++++ pulseaudio/src/pulsecore/module.c
+@@ -229,6 +229,8 @@ static void pa_module_free(pa_module *m)
+
+ lt_dlclose(m->dl);
+
++ pa_hashmap_remove(m->core->modules_pending_unload, m);
++
+ pa_log_info("Unloaded \"%s\" (index: #%u).", m->name, m->index);
+
+ pa_subscription_post(m->core, PA_SUBSCRIPTION_EVENT_MODULE|PA_SUBSCRIPTION_EVENT_REMOVE, m->index);
+@@ -245,8 +247,6 @@ void pa_module_unload(pa_core *c, pa_mod
+ if (m->core->disallow_module_loading && !force)
+ return;
+
+- pa_hashmap_remove(c->modules_pending_unload, m);
+-
+ if (!(m = pa_idxset_remove_by_data(c->modules, m, NULL)))
+ return;
+
+@@ -300,6 +300,7 @@ void pa_module_unload_all(pa_core *c) {
+ c->mainloop->defer_free(c->module_defer_unload_event);
+ c->module_defer_unload_event = NULL;
+ }
++ pa_assert(pa_hashmap_isempty(c->modules_pending_unload));
+ }
+
+ static void defer_cb(pa_mainloop_api*api, pa_defer_event *e, void *userdata) {
diff --git a/debian/patches/series b/debian/patches/series
index bca3162..f5fc1a4 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -7,6 +7,9 @@
0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch
0099-pa_yes_no.patch
+# Patches pulled from upstream
+0101-module-Always-remove-freed-module-from-modules_pendi.patch
+
# Ubuntu touch stuff
0202-dont-probe-ucm.patch
0203-card-Add-hook-before-profile-changes.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-pulseaudio/pulseaudio.git
More information about the pkg-pulseaudio-devel
mailing list