[pulseaudio] 01/01: Sync 1:8.0-0ubuntu3 packaging from xenial

Luke Yelavich themuso-guest at moszumanska.debian.org
Wed Apr 27 08:46:59 UTC 2016


This is an automated email from the git hooks/post-receive script.

themuso-guest pushed a commit to branch ubuntu
in repository pulseaudio.

commit ba87e06c49f001b7c6a212e9bf59c41e5f11fa04
Author: Luke Yelavich <themuso at ubuntu.com>
Date:   Wed Apr 27 10:46:21 2016 +0200

    Sync 1:8.0-0ubuntu3 packaging from xenial
---
 debian/changelog                                   | 11 +++++
 ...nd_mixer_poll_descriptors_count_when_zero.patch | 16 -------
 ...Quick-workaround-for-potential-index-out-.patch | 40 ++++++++++++++++
 ...ort-available-Switch-from-HDMI-to-analog-.patch | 54 ++++++++++++++++++++++
 debian/patches/series                              |  5 +-
 5 files changed, 109 insertions(+), 17 deletions(-)

diff --git a/debian/changelog b/debian/changelog
index 2fcbd99..8f12919 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+pulseaudio (1:8.0-0ubuntu3) xenial; urgency=medium
+
+  * Drop 0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch 
+    - Upstreamed
+  * 0024-alsa-mixer-Quick-workaround-for-potential-index-out-.patch
+    - Fix a potential index-out-of-bounds when reading multichannel mixers
+  * 0100-switch-on-port-available-Switch-from-HDMI-to-analog-.patch
+    - Improve an 8.0 routing regression 
+
+ -- David Henningsson <david.henningsson at canonical.com>  Mon, 21 Mar 2016 11:14:25 +0100
+
 pulseaudio (1:8.0-0ubuntu2) xenial; urgency=medium
 
   * 0600-droid-sync-with-upstream-for-Android-5-support-and-b.patch:
diff --git a/debian/patches/0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch b/debian/patches/0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch
deleted file mode 100644
index 3e9e71f..0000000
--- a/debian/patches/0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-Description: Avoid abort when poll descriptor is 0 (LP: #1092377)
-
-Index: pulseaudio/src/modules/alsa/alsa-mixer.c
-===================================================================
---- pulseaudio.orig/src/modules/alsa/alsa-mixer.c
-+++ pulseaudio/src/modules/alsa/alsa-mixer.c
-@@ -328,6 +328,9 @@ static void defer_cb(pa_mainloop_api *a,
-     if (n < 0) {
-         pa_log("snd_mixer_poll_descriptors_count() failed: %s", pa_alsa_strerror(n));
-         return;
-+    } else if (n == 0) {
-+        pa_log("snd_mixer_poll_descriptors_count() equal 0");
-+        return;
-     }
-     else if (n == 0) {
-         pa_log_warn("Mixer has no poll descriptors. Please control mixer from PulseAudio only.");
diff --git a/debian/patches/0024-alsa-mixer-Quick-workaround-for-potential-index-out-.patch b/debian/patches/0024-alsa-mixer-Quick-workaround-for-potential-index-out-.patch
new file mode 100644
index 0000000..3a524f4
--- /dev/null
+++ b/debian/patches/0024-alsa-mixer-Quick-workaround-for-potential-index-out-.patch
@@ -0,0 +1,40 @@
+From 8d3a93d699e94d461e6ad814e731765c91a36ec4 Mon Sep 17 00:00:00 2001
+From: David Henningsson <david.henningsson at canonical.com>
+Date: Mon, 21 Mar 2016 10:28:02 +0100
+Subject: [PATCH] alsa-mixer: Quick workaround for potential
+ index-out-of-bounds access
+
+This might fix (LP: #1539209) but I'm not sure.
+
+Upstream had a bigger refactor of the function instead, which
+also fixes the problem (see
+"alsa-mixer: refactor element_probe and fix >2 channel bug" upstream).
+
+Signed-off-by: David Henningsson <david.henningsson at canonical.com>
+---
+ src/modules/alsa/alsa-mixer.c | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
+index 1fe2a02..ed5fcf7 100644
+--- a/src/modules/alsa/alsa-mixer.c
++++ b/src/modules/alsa/alsa-mixer.c
+@@ -1751,6 +1751,7 @@ static int element_probe(pa_alsa_element *e, snd_mixer_t *m) {
+ 
+                     if (e->n_channels <= 0) {
+                         pa_log_warn("Volume element %s with no channels?", e->alsa_name);
++                        e->n_channels = 1; /* Diwic: quick workaround so that we don't index out of bounds a few rows later */
+                         e->volume_use = PA_ALSA_VOLUME_IGNORE;
+                     }
+ 
+@@ -1767,6 +1768,7 @@ static int element_probe(pa_alsa_element *e, snd_mixer_t *m) {
+                          * don't support elements with more than two
+                          * channels... */
+                         pa_log_warn("Volume element %s has %u channels. That's too much! I can't handle that!", e->alsa_name, e->n_channels);
++                        e->n_channels = 1; /* Diwic: quick workaround so that we don't index out of bounds a few rows later */
+                         e->volume_use = PA_ALSA_VOLUME_IGNORE;
+                     }
+ 
+-- 
+2.7.3
+
diff --git a/debian/patches/0100-switch-on-port-available-Switch-from-HDMI-to-analog-.patch b/debian/patches/0100-switch-on-port-available-Switch-from-HDMI-to-analog-.patch
new file mode 100644
index 0000000..dabd3c9
--- /dev/null
+++ b/debian/patches/0100-switch-on-port-available-Switch-from-HDMI-to-analog-.patch
@@ -0,0 +1,54 @@
+From f6e1ac2dd2af01088fb9fea85bd57502a214335b Mon Sep 17 00:00:00 2001
+From: David Henningsson <david.henningsson at canonical.com>
+Date: Fri, 29 Jan 2016 20:33:22 +0100
+Subject: [PATCH] switch-on-port-available: Switch from HDMI to analog; but not
+ the other way around
+
+If you have headphones plugged in and plug in HDMI; you want sound
+to stay on headphones.
+If you have HDMI plugged in and you plug in headphones; you want sound
+to switch to headphones.
+
+Hence we need to take priority into account as well when determining
+whether to switch to a new profile or not.
+
+BugLink: https://bugs.freedesktop.org/show_bug.cgi?id=93903
+Signed-off-by: David Henningsson <david.henningsson at canonical.com>
+---
+ src/modules/module-switch-on-port-available.c | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/modules/module-switch-on-port-available.c b/src/modules/module-switch-on-port-available.c
+index 5dd9786..6f4c895 100644
+--- a/src/modules/module-switch-on-port-available.c
++++ b/src/modules/module-switch-on-port-available.c
+@@ -29,7 +29,7 @@
+ 
+ #include "module-switch-on-port-available-symdef.h"
+ 
+-static bool profile_good_for_output(pa_card_profile *profile) {
++static bool profile_good_for_output(pa_card_profile *profile, unsigned prio) {
+     pa_sink *sink;
+     uint32_t idx;
+ 
+@@ -49,7 +49,7 @@ static bool profile_good_for_output(pa_card_profile *profile) {
+         if (!sink->active_port)
+             continue;
+ 
+-        if (sink->active_port->available != PA_AVAILABLE_NO)
++        if ((sink->active_port->available != PA_AVAILABLE_NO) && (sink->active_port->priority >= prio))
+             return false;
+     }
+ 
+@@ -88,7 +88,7 @@ static int try_to_switch_profile(pa_device_port *port) {
+         switch (port->direction) {
+             case PA_DIRECTION_OUTPUT:
+                 name = profile->output_name;
+-                good = profile_good_for_output(profile);
++                good = profile_good_for_output(profile, port->priority);
+                 break;
+ 
+             case PA_DIRECTION_INPUT:
+-- 
+2.7.3
+
diff --git a/debian/patches/series b/debian/patches/series
index b2893d4..646bf2a 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -4,7 +4,10 @@
 0006-load-module-x11-bell.patch
 0016-nodisplay-autostart.patch
 0022-inotify-wrapper-Quit-daemon-if-pid-file-is-removed.patch
-0023-fixing_snd_mixer_poll_descriptors_count_when_zero.patch
+0024-alsa-mixer-Quick-workaround-for-potential-index-out-.patch
+
+# Cherry-picked from upstream
+0100-switch-on-port-available-Switch-from-HDMI-to-analog-.patch
 
 # Ubuntu touch stuff
 0202-dont-probe-ucm.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