[pulseaudio] 01/06: Imported Upstream version 7.1

Felipe Sateler fsateler at moszumanska.debian.org
Sun Nov 1 19:55:24 UTC 2015


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

fsateler pushed a commit to branch master
in repository pulseaudio.

commit 38f07923e52a6f5fc3814296de7467adf422284d
Author: Felipe Sateler <fsateler at debian.org>
Date:   Sun Nov 1 13:28:32 2015 -0300

    Imported Upstream version 7.1
---
 .tarball-version                                   |  2 +-
 .version                                           |  2 +-
 Makefile.in                                        |  2 +-
 NEWS                                               | 18 ++++++++++++++++++
 configure                                          | 22 +++++++++++-----------
 configure.ac                                       |  2 +-
 man/pulseaudio.1                                   |  2 +-
 man/pulseaudio.1.xml.in                            |  4 +++-
 src/daemon/main.c                                  |  8 ++++++++
 src/daemon/systemd/user/pulseaudio.service.in      |  2 ++
 src/modules/alsa/alsa-mixer.c                      |  6 +++---
 src/modules/alsa/alsa-ucm.c                        |  1 -
 src/modules/alsa/mixer/paths/analog-input.conf     |  6 ++++++
 .../alsa/mixer/paths/analog-output-lineout.conf    |  8 ++++++++
 .../mixer/paths/analog-output-speaker-always.conf  |  4 ++++
 .../alsa/mixer/paths/analog-output-speaker.conf    |  4 ++++
 src/modules/module-null-sink.c                     |  6 ++++--
 src/pulse/version.h                                |  4 ++--
 src/pulsecore/pstream.c                            | 11 ++++++++++-
 src/pulsecore/shm.c                                | 10 +++++++---
 20 files changed, 95 insertions(+), 29 deletions(-)

diff --git a/.tarball-version b/.tarball-version
index 4fedf1d..0f0fefa 100644
--- a/.tarball-version
+++ b/.tarball-version
@@ -1 +1 @@
-7.0
+7.1
diff --git a/.version b/.version
index 4fedf1d..0f0fefa 100644
--- a/.version
+++ b/.version
@@ -1 +1 @@
-7.0
+7.1
diff --git a/Makefile.in b/Makefile.in
index d5aaf4e..09a3705 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -239,7 +239,7 @@ am__DIST_COMMON = $(srcdir)/Makefile.in \
 	$(top_srcdir)/build-aux/missing \
 	$(top_srcdir)/src/pulse/version.h.in ABOUT-NLS NEWS README \
 	build-aux/compile build-aux/config.guess \
-	build-aux/config.rpath build-aux/config.sub \
+	build-aux/config.rpath build-aux/config.sub build-aux/depcomp \
 	build-aux/install-sh build-aux/ltmain.sh build-aux/missing
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
diff --git a/NEWS b/NEWS
index c1f2755..d9180a6 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,21 @@
+PulseAudio 7.1
+
+Changes at a glance:
+
+  * Fix a crasher when using srbchannel
+  * Fix a build system typo that caused symlinks to turn up in /
+  * Make Xonar cards work better
+  * Other minor  bug fixes and improvements
+
+Contributors:
+
+  David Henningsson (4):
+  Felipe Sateler (2):
+  Georg Chini (1):
+  Takashi Iwai (1):
+  Tanu Kaskinen (3):
+
+
 PulseAudio 7.0
 
 Changes at a glance:
diff --git a/configure b/configure
index b31097d..ff9bb7a 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for pulseaudio 7.0.
+# Generated by GNU Autoconf 2.69 for pulseaudio 7.1.
 #
 # Report bugs to <pulseaudio-discuss (at) lists (dot) freedesktop (dot) org>.
 #
@@ -590,8 +590,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='pulseaudio'
 PACKAGE_TARNAME='pulseaudio'
-PACKAGE_VERSION='7.0'
-PACKAGE_STRING='pulseaudio 7.0'
+PACKAGE_VERSION='7.1'
+PACKAGE_STRING='pulseaudio 7.1'
 PACKAGE_BUGREPORT='pulseaudio-discuss (at) lists (dot) freedesktop (dot) org'
 PACKAGE_URL='http://pulseaudio.org/'
 
@@ -1741,7 +1741,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures pulseaudio 7.0 to adapt to many kinds of systems.
+\`configure' configures pulseaudio 7.1 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1811,7 +1811,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of pulseaudio 7.0:";;
+     short | recursive ) echo "Configuration of pulseaudio 7.1:";;
    esac
   cat <<\_ACEOF
 
@@ -2113,7 +2113,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-pulseaudio configure 7.0
+pulseaudio configure 7.1
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2703,7 +2703,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by pulseaudio $as_me 7.0, which was
+It was created by pulseaudio $as_me 7.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3655,7 +3655,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='pulseaudio'
- VERSION='7.0'
+ VERSION='7.1'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -27924,7 +27924,7 @@ else
   bashcompletiondir=$($PKG_CONFIG --variable=completionsdir bash-completion)
 fi
 
-if test "x$bashcompletionsdir" = ""; then
+if test "x$bashcompletionsdir" = "x"; then
 	bashcompletiondir="${datadir}/bash-completion/completions"
 fi
 
@@ -28790,7 +28790,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by pulseaudio $as_me 7.0, which was
+This file was extended by pulseaudio $as_me 7.1, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -28857,7 +28857,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-pulseaudio config.status 7.0
+pulseaudio config.status 7.1
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index fa8ea1c..f777223 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1439,7 +1439,7 @@ AC_SUBST(udevrulesdir)
 AC_ARG_WITH([bash-completion-dir],
         AS_HELP_STRING([--with-bash-completion-dir=DIR], [Directory for bash completion files]),
         [bashcompletiondir=$withval], [bashcompletiondir=$($PKG_CONFIG --variable=completionsdir bash-completion)])
-if test "x$bashcompletionsdir" = ""; then
+if test "x$bashcompletionsdir" = "x"; then
 	bashcompletiondir="${datadir}/bash-completion/completions"
 fi
 
diff --git a/man/pulseaudio.1 b/man/pulseaudio.1
index 5f3e027..60eb94e 100644
--- a/man/pulseaudio.1
+++ b/man/pulseaudio.1
@@ -57,7 +57,7 @@ Return 0 as return code when the PulseAudio daemon is already running for the ca
 Run as system-wide instance instead of per-user. Please note that this disables certain features of PulseAudio and is generally not recommended unless the system knows no local users (e.g. is a thin client). This feature needs special configuration and a dedicated UNIX user set up. It is highly recommended to combine this with \fB--disallow-module-loading\f1 (see below).
 .TP
 \fB-D | --daemonize\f1\fI[=BOOL]\f1
-Daemonize after startup, i.e. detach from the terminal.
+Daemonize after startup, i.e. detach from the terminal. Note that when running as a systemd service you should use \fB--daemonize=no\f1 for systemd notification to work. 
 .TP
 \fB--fail\f1\fI[=BOOL]\f1
 Fail startup when any of the commands specified in the startup script \fIdefault.pa\f1 (see below) fails.
diff --git a/man/pulseaudio.1.xml.in b/man/pulseaudio.1.xml.in
index e6291d8..650b417 100644
--- a/man/pulseaudio.1.xml.in
+++ b/man/pulseaudio.1.xml.in
@@ -130,7 +130,9 @@ License along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
       <p><opt>-D | --daemonize</opt><arg>[=BOOL]</arg></p>
 
       <optdesc><p>Daemonize after startup, i.e. detach from the
-      terminal.</p></optdesc>
+      terminal. Note that when running as a systemd service you should
+      use <opt>--daemonize=no</opt> for systemd notification to work.
+      </p></optdesc>
     </option>
 
     <option>
diff --git a/src/daemon/main.c b/src/daemon/main.c
index 8137121..7734f52 100644
--- a/src/daemon/main.c
+++ b/src/daemon/main.c
@@ -1131,12 +1131,20 @@ int main(int argc, char *argv[]) {
 
     pa_log_info("Daemon startup complete.");
 
+#ifdef HAVE_SYSTEMD_DAEMON
+    sd_notify(0, "READY=1");
+#endif
+
     retval = 0;
     if (pa_mainloop_run(mainloop, &retval) < 0)
         goto finish;
 
     pa_log_info("Daemon shutdown initiated.");
 
+#ifdef HAVE_SYSTEMD_DAEMON
+    sd_notify(0, "STOPPING=1");
+#endif
+
 finish:
 #ifdef HAVE_DBUS
     if (server_bus)
diff --git a/src/daemon/systemd/user/pulseaudio.service.in b/src/daemon/systemd/user/pulseaudio.service.in
index e08ff1e..df42fc3 100644
--- a/src/daemon/systemd/user/pulseaudio.service.in
+++ b/src/daemon/systemd/user/pulseaudio.service.in
@@ -2,6 +2,8 @@
 Description=Sound Service
 
 [Service]
+# Note that notify will only work if --daemonize=no
+Type=notify
 ExecStart=@PA_BINARY@ --daemonize=no
 Restart=on-failure
 
diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
index 425c5e6..7580e8a 100644
--- a/src/modules/alsa/alsa-mixer.c
+++ b/src/modules/alsa/alsa-mixer.c
@@ -1743,10 +1743,10 @@ 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);
-                        return -1;
+                        e->volume_use = PA_ALSA_VOLUME_IGNORE;
                     }
 
-                    if (e->n_channels > 2) {
+                    else if (e->n_channels > 2) {
                         /* FIXME: In some places code like this is used:
                          *
                          *     e->masks[alsa_channel_ids[p]][e->n_channels-1]
@@ -1759,7 +1759,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);
-                        return -1;
+                        e->volume_use = PA_ALSA_VOLUME_IGNORE;
                     }
 
                     if (!e->override_map) {
diff --git a/src/modules/alsa/alsa-ucm.c b/src/modules/alsa/alsa-ucm.c
index ff5693d..42f3242 100644
--- a/src/modules/alsa/alsa-ucm.c
+++ b/src/modules/alsa/alsa-ucm.c
@@ -778,7 +778,6 @@ static void ucm_add_port_combination(
 
         pa_hashmap_put(ports, port->name, port);
         pa_log_debug("Add port %s: %s", port->name, port->description);
-        port->profiles = pa_hashmap_new(pa_idxset_string_hash_func, pa_idxset_string_compare_func);
     }
 
     port->priority = priority;
diff --git a/src/modules/alsa/mixer/paths/analog-input.conf b/src/modules/alsa/mixer/paths/analog-input.conf
index 27ca74c..c9db677 100644
--- a/src/modules/alsa/mixer/paths/analog-input.conf
+++ b/src/modules/alsa/mixer/paths/analog-input.conf
@@ -30,6 +30,9 @@ override-map.2 = all-left,all-right
 [Element Mic]
 required-absent = any
 
+[Element Mic Boost]
+required-absent = any
+
 [Element Dock Mic]
 required-absent = any
 
@@ -78,6 +81,9 @@ required-absent = any
 [Element Line]
 required-absent = any
 
+[Element Line Boost]
+required-absent = any
+
 [Element Aux]
 required-absent = any
 
diff --git a/src/modules/alsa/mixer/paths/analog-output-lineout.conf b/src/modules/alsa/mixer/paths/analog-output-lineout.conf
index 454810d..4add78d 100644
--- a/src/modules/alsa/mixer/paths/analog-output-lineout.conf
+++ b/src/modules/alsa/mixer/paths/analog-output-lineout.conf
@@ -87,6 +87,14 @@ state.plugged = unknown
 state.unplugged = unknown
 required-any = any
 
+[Jack Dock Line Out]
+required-any = any
+
+[Jack Dock Line Out Phantom]
+state.plugged = unknown
+state.unplugged = unknown
+required-any = any
+
 [Element Hardware Master]
 switch = mute
 volume = merge
diff --git a/src/modules/alsa/mixer/paths/analog-output-speaker-always.conf b/src/modules/alsa/mixer/paths/analog-output-speaker-always.conf
index 599cfc8..71f356d 100644
--- a/src/modules/alsa/mixer/paths/analog-output-speaker-always.conf
+++ b/src/modules/alsa/mixer/paths/analog-output-speaker-always.conf
@@ -49,6 +49,10 @@ state.unplugged = unknown
 state.plugged = no
 state.unplugged = unknown
 
+[Jack Dock Line Out]
+state.plugged = no
+state.unplugged = unknown
+
 [Element Hardware Master]
 switch = mute
 volume = merge
diff --git a/src/modules/alsa/mixer/paths/analog-output-speaker.conf b/src/modules/alsa/mixer/paths/analog-output-speaker.conf
index ab02ad0..9f4dac4 100644
--- a/src/modules/alsa/mixer/paths/analog-output-speaker.conf
+++ b/src/modules/alsa/mixer/paths/analog-output-speaker.conf
@@ -52,6 +52,10 @@ state.unplugged = unknown
 state.plugged = no
 state.unplugged = unknown
 
+[Jack Dock Line Out]
+state.plugged = no
+state.unplugged = unknown
+
 [Jack Speaker Phantom]
 required-any = any
 state.plugged = unknown
diff --git a/src/modules/module-null-sink.c b/src/modules/module-null-sink.c
index 0270ba2..5b98ba5 100644
--- a/src/modules/module-null-sink.c
+++ b/src/modules/module-null-sink.c
@@ -93,8 +93,10 @@ static int sink_process_msg(
     switch (code) {
         case PA_SINK_MESSAGE_SET_STATE:
 
-            if (PA_PTR_TO_UINT(data) == PA_SINK_RUNNING)
-                u->timestamp = pa_rtclock_now();
+            if (pa_sink_get_state(u->sink) == PA_SINK_SUSPENDED || pa_sink_get_state(u->sink) == PA_SINK_INIT) {
+                if (PA_PTR_TO_UINT(data) == PA_SINK_RUNNING || PA_PTR_TO_UINT(data) == PA_SINK_IDLE)
+                    u->timestamp = pa_rtclock_now();
+            }
 
             break;
 
diff --git a/src/pulse/version.h b/src/pulse/version.h
index 18e8a1f..c815bd0 100644
--- a/src/pulse/version.h
+++ b/src/pulse/version.h
@@ -33,7 +33,7 @@ PA_C_DECL_BEGIN
 /** Return the version of the header files. Keep in mind that this is
 a macro and not a function, so it is impossible to get the pointer of
 it. */
-#define pa_get_headers_version() ("7.0.0")
+#define pa_get_headers_version() ("7.1.0")
 
 /** Return the version of the library the current application is
  * linked to. */
@@ -53,7 +53,7 @@ const char* pa_get_library_version(void);
 #define PA_MAJOR 7
 
 /** The minor version of PA. \since 0.9.15 */
-#define PA_MINOR 0
+#define PA_MINOR 1
 
 /** The micro version of PA (will always be 0 from v1.0 onwards). \since 0.9.15 */
 #define PA_MICRO 0
diff --git a/src/pulsecore/pstream.c b/src/pulsecore/pstream.c
index 8c14fbb..98a8382 100644
--- a/src/pulsecore/pstream.c
+++ b/src/pulsecore/pstream.c
@@ -216,14 +216,23 @@ fail:
 }
 
 static bool srb_callback(pa_srbchannel *srb, void *userdata) {
+    bool b;
     pa_pstream *p = userdata;
 
     pa_assert(p);
     pa_assert(PA_REFCNT_VALUE(p) > 0);
     pa_assert(p->srb == srb);
 
+    pa_pstream_ref(p);
+
     do_pstream_read_write(p);
-    return p->srb != NULL;
+
+    /* If either pstream or the srb is going away, return false.
+       We need to check this before p is destroyed. */
+    b = (PA_REFCNT_VALUE(p) > 1) && (p->srb == srb);
+    pa_pstream_unref(p);
+
+    return b;
 }
 
 static void io_callback(pa_iochannel*io, void *userdata) {
diff --git a/src/pulsecore/shm.c b/src/pulsecore/shm.c
index eefd7ba..d613168 100644
--- a/src/pulsecore/shm.c
+++ b/src/pulsecore/shm.c
@@ -288,7 +288,7 @@ void pa_shm_punch(pa_shm *m, size_t offset, size_t size) {
 
 #ifdef HAVE_SHM_OPEN
 
-int pa_shm_attach(pa_shm *m, unsigned id, bool writable) {
+static int shm_attach(pa_shm *m, unsigned id, bool writable, bool for_cleanup) {
     char fn[32];
     int fd = -1;
     int prot;
@@ -299,7 +299,7 @@ int pa_shm_attach(pa_shm *m, unsigned id, bool writable) {
     segment_name(fn, sizeof(fn), m->id = id);
 
     if ((fd = shm_open(fn, writable ? O_RDWR : O_RDONLY, 0)) < 0) {
-        if (errno != EACCES && errno != ENOENT)
+        if ((errno != EACCES && errno != ENOENT) || !for_cleanup)
             pa_log("shm_open() failed: %s", pa_cstrerror(errno));
         goto fail;
     }
@@ -338,6 +338,10 @@ fail:
     return -1;
 }
 
+int pa_shm_attach(pa_shm *m, unsigned id, bool writable) {
+    return shm_attach(m, id, writable, false);
+}
+
 #else /* HAVE_SHM_OPEN */
 
 int pa_shm_attach(pa_shm *m, unsigned id, bool writable) {
@@ -375,7 +379,7 @@ int pa_shm_cleanup(void) {
         if (pa_atou(de->d_name + SHM_ID_LEN, &id) < 0)
             continue;
 
-        if (pa_shm_attach(&seg, id, false) < 0)
+        if (shm_attach(&seg, id, false, true) < 0)
             continue;
 
         if (seg.size < SHM_MARKER_SIZE) {

-- 
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