diff --git a/.gitignore b/.gitignore
index 6119d0e..cab9698 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,3 +4,4 @@
/pulseaudio-*.tar.xz.md5
/pulseaudio-*.tar.xz.sha1
/pulseaudio-12.2.tar.xz.sha256
+/pulseaudio-12.99.1.tar.xz.sha256
diff --git a/0001-alsa-sink-clear-pollfd-revents-before-poll.patch b/0001-alsa-sink-clear-pollfd-revents-before-poll.patch
deleted file mode 100644
index 5f91786..0000000
--- a/0001-alsa-sink-clear-pollfd-revents-before-poll.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-From 0b3c52341d1d8d098f315302d6d3e1c40965493f Mon Sep 17 00:00:00 2001
-From: Kai Vehmanen
-Date: Wed, 3 Jul 2019 17:09:51 +0300
-Subject: [PATCH] alsa-sink: clear pollfd revents before poll
-
-Always clear revents before calling snd_pcm_poll_descriptors_revents()
-as the ALSA function will not clear out existing events.
-
-Without this, playback restart fails in the following
-scenario:
-
-1. single stream PCM playback ongoing
-2. system put to system suspend (S3), ALSA sink suspended
-3. system resumes, ALSA sink restarted
-4. upon first alsa-sink thread_func iteration, rtpoll
- revents still hass POLLERR bits set (due to the suspend)
-5. execution goes to pa_alsa_recover_from_poll()
-6. snd_pcm_drop() is called and PCM is restarted
-7. process loops from (4) and playback is never recovered
-
-Signed-off-by: Kai Vehmanen
----
- src/modules/alsa/alsa-sink.c | 1 +
- 1 file changed, 1 insertion(+)
-
-diff --git a/src/modules/alsa/alsa-sink.c b/src/modules/alsa/alsa-sink.c
-index 4568a19c5..d96f19398 100644
---- a/src/modules/alsa/alsa-sink.c
-+++ b/src/modules/alsa/alsa-sink.c
-@@ -1915,6 +1915,7 @@ static void thread_func(void *userdata) {
- unsigned n;
-
- pollfd = pa_rtpoll_item_get_pollfd(u->alsa_rtpoll_item, &n);
-+ pollfd->revents = 0;
-
- if ((err = snd_pcm_poll_descriptors_revents(u->pcm_handle, pollfd, n, &revents)) < 0) {
- pa_log("snd_pcm_poll_descriptors_revents() failed: %s", pa_alsa_strerror(err));
---
-2.21.0
-
diff --git a/0008-set-exit_idle_time-to-0-when-we-detect-a-session.patch b/0008-set-exit_idle_time-to-0-when-we-detect-a-session.patch
deleted file mode 100644
index 045ab55..0000000
--- a/0008-set-exit_idle_time-to-0-when-we-detect-a-session.patch
+++ /dev/null
@@ -1,181 +0,0 @@
-From de705a0eeaa27a8ac1abdc2625e639340323595a Mon Sep 17 00:00:00 2001
-From: Tanu Kaskinen
-Date: Tue, 6 Mar 2018 15:09:06 +0200
-Subject: [PATCH 08/77] set exit_idle_time to 0 when we detect a session
-
-As the comments explain, this fixes relogin problems on some systems
-that remove our sockets on logout without terminating the daemon.
----
- man/pulse-daemon.conf.5.xml.in | 15 ++++++++++++---
- man/pulseaudio.1.xml.in | 17 +++++++++++++++--
- src/modules/module-console-kit.c | 13 +++++++++++++
- src/modules/module-systemd-login.c | 14 ++++++++++++++
- src/modules/x11/module-x11-xsmp.c | 13 +++++++++++++
- src/pulsecore/core.c | 10 ++++++++++
- src/pulsecore/core.h | 2 ++
- 7 files changed, 79 insertions(+), 5 deletions(-)
-
-diff --git a/man/pulse-daemon.conf.5.xml.in b/man/pulse-daemon.conf.5.xml.in
-index f0550f3b..f49fa9b0 100644
---- a/man/pulse-daemon.conf.5.xml.in
-+++ b/man/pulse-daemon.conf.5.xml.in
-@@ -292,9 +292,18 @@ License along with PulseAudio; if not, see .
-
- exit-idle-time= Terminate the daemon after the
- last client quit and this time in seconds passed. Use a negative value to
-- disable this feature. Defaults to 20. The
-- --exit-idle-time command line option takes
-- precedence.
-+ disable this feature. Defaults to 20. The --exit-idle-time
-+ command line option takes precedence.
-+
-+ When PulseAudio runs in the per-user mode and detects a login
-+ session, then any positive value will be reset to 0 so that PulseAudio
-+ will terminate immediately on logout. A positive value therefore has
-+ effect only in environments where there's no support for login session
-+ tracking. A negative value can still be used to disable any automatic
-+ exit.
-+
-+ When PulseAudio runs in the system mode, automatic exit is always
-+ disabled, so this option does nothing.
-
-
-
-diff --git a/man/pulseaudio.1.xml.in b/man/pulseaudio.1.xml.in
-index f732b8ae..824eddb4 100644
---- a/man/pulseaudio.1.xml.in
-+++ b/man/pulseaudio.1.xml.in
-@@ -189,8 +189,21 @@ License along with PulseAudio; if not, see .
-
- --exit-idle-time =SECS
-
-- Terminate the daemon when idle and the specified
-- number of seconds passed.
-+
-+ Terminate the daemon after the last client quit and this time in
-+ seconds passed. Use a negative value to disable this feature. Defaults
-+ to 20.
-+
-+ When PulseAudio runs in the per-user mode and detects a login
-+ session, then any positive value will be reset to 0 so that PulseAudio
-+ will terminate immediately on logout. A positive value therefore has
-+ effect only in environments where there's no support for login session
-+ tracking. A negative value can still be used to disable any automatic
-+ exit.
-+
-+ When PulseAudio runs in the system mode, automatic exit is always
-+ disabled, so this option does nothing.
-+
-
-
-
-diff --git a/src/modules/module-console-kit.c b/src/modules/module-console-kit.c
-index c7938849..c8fe2ed2 100644
---- a/src/modules/module-console-kit.c
-+++ b/src/modules/module-console-kit.c
-@@ -118,6 +118,19 @@ static void add_session(struct userdata *u, const char *id) {
-
- pa_log_debug("Added new session %s", id);
-
-+ /* Positive exit_idle_time is only useful when we have no session tracking
-+ * capability, so we can set it to 0 now that we have detected a session.
-+ * The benefit of setting exit_idle_time to 0 is that pulseaudio will exit
-+ * immediately when the session ends. That in turn is useful, because some
-+ * systems (those that use pam_systemd but don't use systemd for managing
-+ * pulseaudio) clean $XDG_RUNTIME_DIR on logout, but fail to terminate all
-+ * services that depend on the files in $XDG_RUNTIME_DIR. The directory
-+ * contains our sockets, and if the sockets are removed without terminating
-+ * pulseaudio, a quick relogin will likely cause trouble, because a new
-+ * instance will be spawned while the old instance is still running. */
-+ if (u->core->exit_idle_time > 0)
-+ pa_core_set_exit_idle_time(u->core, 0);
-+
- fail:
-
- if (m)
-diff --git a/src/modules/module-systemd-login.c b/src/modules/module-systemd-login.c
-index 87981592..51401575 100644
---- a/src/modules/module-systemd-login.c
-+++ b/src/modules/module-systemd-login.c
-@@ -84,6 +84,20 @@ static int add_session(struct userdata *u, const char *id) {
- pa_hashmap_put(u->sessions, session->id, session);
-
- pa_log_debug("Added new session %s", id);
-+
-+ /* Positive exit_idle_time is only useful when we have no session tracking
-+ * capability, so we can set it to 0 now that we have detected a session.
-+ * The benefit of setting exit_idle_time to 0 is that pulseaudio will exit
-+ * immediately when the session ends. That in turn is useful, because some
-+ * systems (those that use pam_systemd but don't use systemd for managing
-+ * pulseaudio) clean $XDG_RUNTIME_DIR on logout, but fail to terminate all
-+ * services that depend on the files in $XDG_RUNTIME_DIR. The directory
-+ * contains our sockets, and if the sockets are removed without terminating
-+ * pulseaudio, a quick relogin will likely cause trouble, because a new
-+ * instance will be spawned while the old instance is still running. */
-+ if (u->core->exit_idle_time > 0)
-+ pa_core_set_exit_idle_time(u->core, 0);
-+
- return 0;
- }
-
-diff --git a/src/modules/x11/module-x11-xsmp.c b/src/modules/x11/module-x11-xsmp.c
-index 0238e516..6f801237 100644
---- a/src/modules/x11/module-x11-xsmp.c
-+++ b/src/modules/x11/module-x11-xsmp.c
-@@ -206,6 +206,19 @@ int pa__init(pa_module*m) {
- if (!u->client)
- goto fail;
-
-+ /* Positive exit_idle_time is only useful when we have no session tracking
-+ * capability, so we can set it to 0 now that we have detected a session.
-+ * The benefit of setting exit_idle_time to 0 is that pulseaudio will exit
-+ * immediately when the session ends. That in turn is useful, because some
-+ * systems (those that use pam_systemd but don't use systemd for managing
-+ * pulseaudio) clean $XDG_RUNTIME_DIR on logout, but fail to terminate all
-+ * services that depend on the files in $XDG_RUNTIME_DIR. The directory
-+ * contains our sockets, and if the sockets are removed without terminating
-+ * pulseaudio, a quick relogin will likely cause trouble, because a new
-+ * instance will be spawned while the old instance is still running. */
-+ if (u->core->exit_idle_time > 0)
-+ pa_core_set_exit_idle_time(u->core, 0);
-+
- pa_modargs_free(ma);
-
- return 0;
-diff --git a/src/pulsecore/core.c b/src/pulsecore/core.c
-index 79abbc04..da42a13e 100644
---- a/src/pulsecore/core.c
-+++ b/src/pulsecore/core.c
-@@ -426,6 +426,16 @@ void pa_core_update_default_source(pa_core *core) {
- pa_hook_fire(&core->hooks[PA_CORE_HOOK_DEFAULT_SOURCE_CHANGED], core->default_source);
- }
-
-+void pa_core_set_exit_idle_time(pa_core *core, int time) {
-+ pa_assert(core);
-+
-+ if (time == core->exit_idle_time)
-+ return;
-+
-+ pa_log_info("exit_idle_time: %i -> %i", core->exit_idle_time, time);
-+ core->exit_idle_time = time;
-+}
-+
- static void exit_callback(pa_mainloop_api *m, pa_time_event *e, const struct timeval *t, void *userdata) {
- pa_core *c = userdata;
- pa_assert(c->exit_event == e);
-diff --git a/src/pulsecore/core.h b/src/pulsecore/core.h
-index 213964ce..38622f61 100644
---- a/src/pulsecore/core.h
-+++ b/src/pulsecore/core.h
-@@ -258,6 +258,8 @@ void pa_core_set_configured_default_source(pa_core *core, const char *source);
- void pa_core_update_default_sink(pa_core *core);
- void pa_core_update_default_source(pa_core *core);
-
-+void pa_core_set_exit_idle_time(pa_core *core, int time);
-+
- /* Check whether no one is connected to this core */
- void pa_core_check_idle(pa_core *c);
-
---
-2.17.1
-
diff --git a/0287-alsa-Use-correct-header-path.patch b/0287-alsa-Use-correct-header-path.patch
deleted file mode 100644
index 334af3e..0000000
--- a/0287-alsa-Use-correct-header-path.patch
+++ /dev/null
@@ -1,130 +0,0 @@
-From 993d3fd89e5611997f1e165bf03edefb0204b0a4 Mon Sep 17 00:00:00 2001
-From: Olaf Hering
-Date: Wed, 27 Mar 2019 09:35:05 +0100
-Subject: [PATCH 287/375] alsa: Use correct header path
-
-Consumers are expected to use instead of
-.
-
-This is in preparation of an change to pkgconfig(alsa) to
-not pollute CFLAGS with -I/usr/include/alsa anymore.
-
-Signed-off-by: Olaf Hering
----
- src/modules/alsa/alsa-mixer.c | 2 +-
- src/modules/alsa/alsa-mixer.h | 2 +-
- src/modules/alsa/alsa-sink.c | 2 +-
- src/modules/alsa/alsa-source.c | 2 +-
- src/modules/alsa/alsa-ucm.c | 2 +-
- src/modules/alsa/alsa-util.c | 2 +-
- src/modules/alsa/alsa-util.h | 2 +-
- src/modules/alsa/module-alsa-source.c | 2 +-
- 8 files changed, 8 insertions(+), 8 deletions(-)
-
-diff --git a/src/modules/alsa/alsa-mixer.c b/src/modules/alsa/alsa-mixer.c
-index 5cb99c8fd..cd99a75f8 100644
---- a/src/modules/alsa/alsa-mixer.c
-+++ b/src/modules/alsa/alsa-mixer.c
-@@ -23,7 +23,7 @@
- #endif
-
- #include
--#include
-+#include
- #include
-
- #ifdef HAVE_VALGRIND_MEMCHECK_H
-diff --git a/src/modules/alsa/alsa-mixer.h b/src/modules/alsa/alsa-mixer.h
-index 3ea4d7329..65b071165 100644
---- a/src/modules/alsa/alsa-mixer.h
-+++ b/src/modules/alsa/alsa-mixer.h
-@@ -21,7 +21,7 @@
- along with PulseAudio; if not, see .
- ***/
-
--#include
-+#include
-
- #include
- #include
-diff --git a/src/modules/alsa/alsa-sink.c b/src/modules/alsa/alsa-sink.c
-index 28143402a..4b46708ce 100644
---- a/src/modules/alsa/alsa-sink.c
-+++ b/src/modules/alsa/alsa-sink.c
-@@ -25,7 +25,7 @@
- #include
- #include
-
--#include
-+#include
-
- #ifdef HAVE_VALGRIND_MEMCHECK_H
- #include
-diff --git a/src/modules/alsa/alsa-source.c b/src/modules/alsa/alsa-source.c
-index 8129220b0..c8bf649e1 100644
---- a/src/modules/alsa/alsa-source.c
-+++ b/src/modules/alsa/alsa-source.c
-@@ -25,7 +25,7 @@
- #include
- #include
-
--#include
-+#include
-
- #include
- #include
-diff --git a/src/modules/alsa/alsa-ucm.c b/src/modules/alsa/alsa-ucm.c
-index 341c8012e..0a40ca8fe 100644
---- a/src/modules/alsa/alsa-ucm.c
-+++ b/src/modules/alsa/alsa-ucm.c
-@@ -27,7 +27,7 @@
- #include
- #include
- #include
--#include
-+#include
-
- #ifdef HAVE_VALGRIND_MEMCHECK_H
- #include
-diff --git a/src/modules/alsa/alsa-util.c b/src/modules/alsa/alsa-util.c
-index e8d712e72..bd0a47e50 100644
---- a/src/modules/alsa/alsa-util.c
-+++ b/src/modules/alsa/alsa-util.c
-@@ -23,7 +23,7 @@
- #endif
-
- #include
--#include
-+#include
-
- #include
- #include
-diff --git a/src/modules/alsa/alsa-util.h b/src/modules/alsa/alsa-util.h
-index 6b27339ec..4ceaa06ee 100644
---- a/src/modules/alsa/alsa-util.h
-+++ b/src/modules/alsa/alsa-util.h
-@@ -21,7 +21,7 @@
- along with PulseAudio; if not, see .
- ***/
-
--#include
-+#include
-
- #include
- #include
-diff --git a/src/modules/alsa/module-alsa-source.c b/src/modules/alsa/module-alsa-source.c
-index af6800dd2..747ba9342 100644
---- a/src/modules/alsa/module-alsa-source.c
-+++ b/src/modules/alsa/module-alsa-source.c
-@@ -24,7 +24,7 @@
-
- #include
-
--#include
-+#include
-
- #ifdef HAVE_VALGRIND_MEMCHECK_H
- #include
---
-2.21.0
-
diff --git a/0304-alsa-Fix-inclusion-of-use-case.h.patch b/0304-alsa-Fix-inclusion-of-use-case.h.patch
deleted file mode 100644
index c592da2..0000000
--- a/0304-alsa-Fix-inclusion-of-use-case.h.patch
+++ /dev/null
@@ -1,45 +0,0 @@
-From b89d33bb182c42db5ad3987b0e91b7bf62f421e8 Mon Sep 17 00:00:00 2001
-From: Takashi Iwai
-Date: Sun, 21 Apr 2019 11:59:30 +0200
-Subject: [PATCH 304/375] alsa: Fix inclusion of use-case.h
-
-The recent change in ALSA upstream stripped -I$include/alsa path from
-pkgconfig. We already fixed for this change in some places but still
-the code for UCM was overlooked, and this resulted in the unresolved
-symbols in alsa card module. Fix them as well.
-
-Signed-off-by: Takashi Iwai
----
- configure.ac | 2 +-
- src/modules/alsa/alsa-ucm.h | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/configure.ac b/configure.ac
-index c004bd70d..b44ed1595 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -826,7 +826,7 @@ AS_IF([test "x$enable_alsa" = "xyes" && test "x$HAVE_ALSA" = "x0"],
- AS_IF([test "x$HAVE_ALSA" = "x1"],
- [
- save_CPPFLAGS="$CPPFLAGS"; CPPFLAGS="$CPPFLAGS $ASOUNDLIB_CFLAGS"
-- AC_CHECK_HEADERS([use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
-+ AC_CHECK_HEADERS([alsa/use-case.h], HAVE_ALSA_UCM=1, HAVE_ALSA_UCM=0)
- CPPFLAGS="$save_CPPFLAGS"
- ],
- HAVE_ALSA_UCM=0)
-diff --git a/src/modules/alsa/alsa-ucm.h b/src/modules/alsa/alsa-ucm.h
-index 53abf3f90..c926f3cc3 100644
---- a/src/modules/alsa/alsa-ucm.h
-+++ b/src/modules/alsa/alsa-ucm.h
-@@ -23,7 +23,7 @@
- ***/
-
- #ifdef HAVE_ALSA_UCM
--#include
-+#include
- #else
- typedef void snd_use_case_mgr_t;
- #endif
---
-2.21.0
-
diff --git a/pulseaudio.spec b/pulseaudio.spec
index afe358a..49d666c 100644
--- a/pulseaudio.spec
+++ b/pulseaudio.spec
@@ -1,5 +1,5 @@
-%global pa_major 12.2
-#global pa_minor 0
+%global pa_major 12.99
+%global pa_minor 1
#global snap 20180411
#global gitrel 129
@@ -31,7 +31,7 @@
Name: pulseaudio
Summary: Improved Linux Sound Server
Version: %{pa_major}%{?pa_minor:.%{pa_minor}}
-Release: 7%{?snap:.%{snap}git%{shortcommit}}%{?dist}
+Release: 1%{?snap:.%{snap}git%{shortcommit}}%{?dist}
License: LGPLv2+
URL: http://www.freedesktop.org/wiki/Software/PulseAudio
%if 0%{?gitrel}
@@ -62,14 +62,8 @@ Patch203: pulseaudio-12.2-qpaeq_python2.patch
Patch206: pulseaudio-11.1-autospawn_disable.patch
## upstream patches
-Patch8: 0008-set-exit_idle_time-to-0-when-we-detect-a-session.patch
-Patch287: 0287-alsa-Use-correct-header-path.patch
-Patch304: 0304-alsa-Fix-inclusion-of-use-case.h.patch
## upstreamable patches
-# https://lists.freedesktop.org/archives/pulseaudio-discuss/2019-July/031257.html
-# can be dropped for future releases
-Patch501: 0001-alsa-sink-clear-pollfd-revents-before-poll.patch
BuildRequires: automake libtool
BuildRequires: gcc-c++
@@ -263,9 +257,6 @@ This package contains GDM integration hooks for the PulseAudio sound server.
%setup -q -T -b0 -n %{name}-%{version}%{?gitrel:-%{gitrel}-g%{shortcommit}}
## upstream patches
-%patch8 -p1 -b .0008
-%patch287 -p1 -b .0287
-%patch304 -p1 -b .0304
## upstreamable patches
@@ -276,8 +267,6 @@ This package contains GDM integration hooks for the PulseAudio sound server.
%patch206 -p1 -b .autospawn_disable
%endif
-%patch501 -p1
-
sed -i.no_consolekit -e \
's/^load-module module-console-kit/#load-module module-console-kit/' \
src/daemon/default.pa.in
@@ -667,6 +656,9 @@ systemctl --no-reload preset --global pulseaudio.socket >/dev/null 2>&1 || :
%changelog
+* Tue Jul 09 2019 Rex Dieter - 12.99.1-1
+- pulseaudio-12.99.1
+
* Wed Jul 03 2019 Rex Dieter - 12.2-7
- alsa-sink: clear pollfd revents before poll
diff --git a/sources b/sources
index 4996de1..d658880 100644
--- a/sources
+++ b/sources
@@ -1,2 +1,2 @@
-SHA512 (pulseaudio-12.2.tar.xz) = 877754c1838b3cb042dbc18a5f1cc3cf313ffcaee7a64703330406d1f86279c34f1107634ac3083b158365e6757fbacf5ec406bc3c5788d291de67b77a561a4e
-SHA512 (pulseaudio-12.2.tar.xz.sha256) = 95f3c5c1f1b7ee96d6f6cefc963bc4e17bd800c6583c1c79d1cdb35917a7a643b41501bb5465edf401aa81dd180ac93312145de805aa183473720a0839419c26
+SHA512 (pulseaudio-12.99.1.tar.xz) = 213bf07b6c3822a5184ecbaf5655387ad49794b3643cad37ec7f1f0ebc348af70855df2ee407bae8db279642de375b89eb7a2ca3f2015fc934f465bb952957dd
+SHA512 (pulseaudio-12.99.1.tar.xz.sha256) = 8f6c0aa3a204a72f8f6bfb6154202af9b0244482f46f790aacbea7aeaccd49ed4df77b35ab50cd84c32f5a3326a74a0284a48e69ac69df9630a56907562b7d4d