[Pkg-mpd-commits] [pkg-mpd] 08/13: New upstream version 0.19.21

Florian Schlichting fsfs at moszumanska.debian.org
Tue Dec 13 20:46:10 UTC 2016


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

fsfs pushed a commit to branch master
in repository pkg-mpd.

commit 554f85814bdb703000955b56b08fb8ec08679067
Author: Florian Schlichting <fsfs at debian.org>
Date:   Tue Dec 13 21:09:32 2016 +0100

    New upstream version 0.19.21
---
 Makefile.am                                 | 11 +++--
 Makefile.in                                 | 75 ++++++++++++++++++++---------
 NEWS                                        |  6 +++
 configure                                   | 70 ++++++++++++++++++++++-----
 configure.ac                                | 23 +++++++--
 doc/doxygen.conf                            |  2 +-
 doc/user.xml                                | 29 ++++++++++-
 src/decoder/plugins/FfmpegDecoderPlugin.cxx |  1 -
 systemd/{ => system}/mpd.service.in         |  0
 systemd/{ => system}/mpd.socket             |  0
 systemd/{ => user}/mpd.service.in           |  9 ++--
 test/test_queue_priority.cxx                | 15 ------
 12 files changed, 179 insertions(+), 62 deletions(-)

diff --git a/Makefile.am b/Makefile.am
index 744b966..a7746e2 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1449,8 +1449,13 @@ FILTER_LIBS = \
 
 if HAVE_SYSTEMD
 systemdsystemunit_DATA = \
-	systemd/mpd.socket \
-	systemd/mpd.service
+	systemd/system/mpd.socket \
+	systemd/system/mpd.service
+endif
+
+if HAVE_SYSTEMD_USER
+systemduserunit_DATA = \
+	systemd/user/mpd.service
 endif
 
 
@@ -2166,7 +2171,7 @@ EXTRA_DIST = $(doc_DATA) autogen.sh \
 	$(wildcard $(srcdir)/scripts/*.rb) \
 	$(man_MANS) $(DOCBOOK_FILES) doc/mpdconf.example doc/doxygen.conf \
 	$(wildcard $(srcdir)/doc/include/*.xml) \
-	systemd/mpd.socket \
+	systemd/system/mpd.socket \
 	android/AndroidManifest.xml \
 	android/build.py \
 	android/custom_rules.xml \
diff --git a/Makefile.in b/Makefile.in
index 8515fbb..f0ac731 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -587,7 +587,7 @@ am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
 mkinstalldirs = $(install_sh) -d
 CONFIG_HEADER = config.h
 CONFIG_CLEAN_FILES = src/win32/mpd_win32_rc.rc doc/doxygen.conf \
-	systemd/mpd.service
+	systemd/system/mpd.service systemd/user/mpd.service
 CONFIG_CLEAN_VPATH_FILES =
 LIBRARIES = $(noinst_LIBRARIES)
 ARFLAGS = cru
@@ -1747,7 +1747,8 @@ libutil_a_OBJECTS = $(am_libutil_a_OBJECTS)
 am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" \
 	"$(DESTDIR)$(man5dir)" "$(DESTDIR)$(developerdir)" \
 	"$(DESTDIR)$(docdir)" "$(DESTDIR)$(protocoldir)" \
-	"$(DESTDIR)$(systemdsystemunitdir)" "$(DESTDIR)$(userdir)"
+	"$(DESTDIR)$(systemdsystemunitdir)" \
+	"$(DESTDIR)$(systemduserunitdir)" "$(DESTDIR)$(userdir)"
 @ENABLE_CURL_TRUE@@ENABLE_TEST_TRUE at am__EXEEXT_1 = test/test_icy_parser$(EXEEXT)
 @ENABLE_DATABASE_TRUE@@ENABLE_TEST_TRUE at am__EXEEXT_2 = test/test_translate_song$(EXEEXT)
 @ENABLE_ARCHIVE_TRUE@@ENABLE_TEST_TRUE at am__EXEEXT_3 = test/test_archive$(EXEEXT)
@@ -2575,7 +2576,7 @@ man5dir = $(mandir)/man5
 NROFF = nroff
 MANS = $(man_MANS)
 DATA = $(developer_DATA) $(doc_DATA) $(noinst_DATA) $(protocol_DATA) \
-	$(systemdsystemunit_DATA) $(user_DATA)
+	$(systemdsystemunit_DATA) $(systemduserunit_DATA) $(user_DATA)
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
 	$(LISP)config.h.in
 # Read a list of newline-separated strings from the standard input,
@@ -2781,9 +2782,10 @@ am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \
 	$(top_srcdir)/build/test-driver \
 	$(top_srcdir)/doc/doxygen.conf.in \
 	$(top_srcdir)/src/win32/mpd_win32_rc.rc.in \
-	$(top_srcdir)/systemd/mpd.service.in AUTHORS COPYING INSTALL \
-	NEWS README build/compile build/config.guess build/config.sub \
-	build/depcomp build/install-sh build/missing
+	$(top_srcdir)/systemd/system/mpd.service.in \
+	$(top_srcdir)/systemd/user/mpd.service.in AUTHORS COPYING \
+	INSTALL NEWS README build/compile build/config.guess \
+	build/config.sub build/depcomp build/install-sh build/missing
 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
 distdir = $(PACKAGE)-$(VERSION)
 top_distdir = $(distdir)
@@ -3032,6 +3034,7 @@ sharedstatedir = @sharedstatedir@
 srcdir = @srcdir@
 sysconfdir = @sysconfdir@
 systemdsystemunitdir = @systemdsystemunitdir@
+systemduserunitdir = @systemduserunitdir@
 target_alias = @target_alias@
 top_build_prefix = @top_build_prefix@
 top_builddir = @top_builddir@
@@ -3732,8 +3735,11 @@ FILTER_LIBS = \
 # systemd unit
 #
 @HAVE_SYSTEMD_TRUE at systemdsystemunit_DATA = \
- at HAVE_SYSTEMD_TRUE@	systemd/mpd.socket \
- at HAVE_SYSTEMD_TRUE@	systemd/mpd.service
+ at HAVE_SYSTEMD_TRUE@	systemd/system/mpd.socket \
+ at HAVE_SYSTEMD_TRUE@	systemd/system/mpd.service
+
+ at HAVE_SYSTEMD_USER_TRUE@systemduserunit_DATA = \
+ at HAVE_SYSTEMD_USER_TRUE@	systemd/user/mpd.service
 
 
 #
@@ -4311,7 +4317,7 @@ EXTRA_DIST = $(doc_DATA) autogen.sh \
 	$(wildcard $(srcdir)/scripts/*.rb) \
 	$(man_MANS) $(DOCBOOK_FILES) doc/mpdconf.example doc/doxygen.conf \
 	$(wildcard $(srcdir)/doc/include/*.xml) \
-	systemd/mpd.socket \
+	systemd/system/mpd.socket \
 	android/AndroidManifest.xml \
 	android/build.py \
 	android/custom_rules.xml \
@@ -4378,7 +4384,9 @@ src/win32/mpd_win32_rc.rc: $(top_builddir)/config.status $(top_srcdir)/src/win32
 	cd $(top_builddir) && $(SHELL) ./config.status $@
 doc/doxygen.conf: $(top_builddir)/config.status $(top_srcdir)/doc/doxygen.conf.in
 	cd $(top_builddir) && $(SHELL) ./config.status $@
-systemd/mpd.service: $(top_builddir)/config.status $(top_srcdir)/systemd/mpd.service.in
+systemd/system/mpd.service: $(top_builddir)/config.status $(top_srcdir)/systemd/system/mpd.service.in
+	cd $(top_builddir) && $(SHELL) ./config.status $@
+systemd/user/mpd.service: $(top_builddir)/config.status $(top_srcdir)/systemd/user/mpd.service.in
 	cd $(top_builddir) && $(SHELL) ./config.status $@
 
 clean-noinstLIBRARIES:
@@ -13401,6 +13409,27 @@ uninstall-systemdsystemunitDATA:
 	@list='$(systemdsystemunit_DATA)'; test -n "$(systemdsystemunitdir)" || list=; \
 	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
 	dir='$(DESTDIR)$(systemdsystemunitdir)'; $(am__uninstall_files_from_dir)
+install-systemduserunitDATA: $(systemduserunit_DATA)
+	@$(NORMAL_INSTALL)
+	@list='$(systemduserunit_DATA)'; test -n "$(systemduserunitdir)" || list=; \
+	if test -n "$$list"; then \
+	  echo " $(MKDIR_P) '$(DESTDIR)$(systemduserunitdir)'"; \
+	  $(MKDIR_P) "$(DESTDIR)$(systemduserunitdir)" || exit 1; \
+	fi; \
+	for p in $$list; do \
+	  if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+	  echo "$$d$$p"; \
+	done | $(am__base_list) | \
+	while read files; do \
+	  echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(systemduserunitdir)'"; \
+	  $(INSTALL_DATA) $$files "$(DESTDIR)$(systemduserunitdir)" || exit $$?; \
+	done
+
+uninstall-systemduserunitDATA:
+	@$(NORMAL_UNINSTALL)
+	@list='$(systemduserunit_DATA)'; test -n "$(systemduserunitdir)" || list=; \
+	files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \
+	dir='$(DESTDIR)$(systemduserunitdir)'; $(am__uninstall_files_from_dir)
 install-userDATA: $(user_DATA)
 	@$(NORMAL_INSTALL)
 	@list='$(user_DATA)'; test -n "$(userdir)" || list=; \
@@ -13899,7 +13928,7 @@ check: $(BUILT_SOURCES)
 all-am: Makefile $(LIBRARIES) $(PROGRAMS) $(MANS) $(DATA) config.h \
 		all-local
 installdirs:
-	for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(developerdir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(protocoldir)" "$(DESTDIR)$(systemdsystemunitdir)" "$(DESTDIR)$(userdir)"; do \
+	for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(developerdir)" "$(DESTDIR)$(docdir)" "$(DESTDIR)$(protocoldir)" "$(DESTDIR)$(systemdsystemunitdir)" "$(DESTDIR)$(systemduserunitdir)" "$(DESTDIR)$(userdir)"; do \
 	  test -z "$$dir" || $(MKDIR_P) "$$dir"; \
 	done
 install: $(BUILT_SOURCES)
@@ -14053,9 +14082,9 @@ maintainer-clean-generic:
 	@echo "This command is intended for maintainers to use"
 	@echo "it deletes files that may require special tools to rebuild."
 	-test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
- at ANDROID_FALSE@@ENABLE_DOCUMENTATION_FALSE at clean-local:
 @ENABLE_DOCUMENTATION_FALSE at uninstall-local:
 @ENABLE_DOCUMENTATION_FALSE at install-data-local:
+ at ANDROID_FALSE@@ENABLE_DOCUMENTATION_FALSE at clean-local:
 clean: clean-am
 
 clean-am: clean-binPROGRAMS clean-generic clean-local \
@@ -14082,7 +14111,8 @@ info-am:
 
 install-data-am: install-data-local install-developerDATA \
 	install-docDATA install-man install-protocolDATA \
-	install-systemdsystemunitDATA install-userDATA
+	install-systemdsystemunitDATA install-systemduserunitDATA \
+	install-userDATA
 
 install-dvi: install-dvi-am
 
@@ -14132,7 +14162,7 @@ ps-am:
 uninstall-am: uninstall-binPROGRAMS uninstall-developerDATA \
 	uninstall-docDATA uninstall-local uninstall-man \
 	uninstall-protocolDATA uninstall-systemdsystemunitDATA \
-	uninstall-userDATA
+	uninstall-systemduserunitDATA uninstall-userDATA
 
 uninstall-man: uninstall-man1 uninstall-man5
 
@@ -14153,14 +14183,15 @@ uninstall-man: uninstall-man1 uninstall-man5
 	install-info-am install-man install-man1 install-man5 \
 	install-pdf install-pdf-am install-protocolDATA install-ps \
 	install-ps-am install-strip install-systemdsystemunitDATA \
-	install-userDATA installcheck installcheck-am installdirs \
-	maintainer-clean maintainer-clean-generic mostlyclean \
-	mostlyclean-compile mostlyclean-generic pdf pdf-am ps ps-am \
-	recheck tags tags-am uninstall uninstall-am \
-	uninstall-binPROGRAMS uninstall-developerDATA \
-	uninstall-docDATA uninstall-local uninstall-man uninstall-man1 \
-	uninstall-man5 uninstall-protocolDATA \
-	uninstall-systemdsystemunitDATA uninstall-userDATA
+	install-systemduserunitDATA install-userDATA installcheck \
+	installcheck-am installdirs maintainer-clean \
+	maintainer-clean-generic mostlyclean mostlyclean-compile \
+	mostlyclean-generic pdf pdf-am ps ps-am recheck tags tags-am \
+	uninstall uninstall-am uninstall-binPROGRAMS \
+	uninstall-developerDATA uninstall-docDATA uninstall-local \
+	uninstall-man uninstall-man1 uninstall-man5 \
+	uninstall-protocolDATA uninstall-systemdsystemunitDATA \
+	uninstall-systemduserunitDATA uninstall-userDATA
 
 .PRECIOUS: Makefile
 
diff --git a/NEWS b/NEWS
index 6285a33..f839258 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,9 @@
+ver 0.19.21 (2016/12/13)
+* decoder
+  - ffmpeg: fix crash bug
+* fix unit test failure after recent "setprio" change
+* systemd: add user unit
+
 ver 0.19.20 (2016/12/09)
 * protocol
   - "setprio" re-enqueues old song if priority has been raised
diff --git a/configure b/configure
index c7fa05e..de6c985 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 mpd 0.19.20.
+# Generated by GNU Autoconf 2.69 for mpd 0.19.21.
 #
 # Report bugs to <musicpd-dev-team at lists.sourceforge.net>.
 #
@@ -580,8 +580,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='mpd'
 PACKAGE_TARNAME='mpd'
-PACKAGE_VERSION='0.19.20'
-PACKAGE_STRING='mpd 0.19.20'
+PACKAGE_VERSION='0.19.21'
+PACKAGE_STRING='mpd 0.19.21'
 PACKAGE_BUGREPORT='musicpd-dev-team at lists.sourceforge.net'
 PACKAGE_URL=''
 
@@ -918,6 +918,9 @@ VERSION_MAJOR
 AM_CXXFLAGS
 AM_CFLAGS
 AM_CPPFLAGS
+HAVE_SYSTEMD_USER_FALSE
+HAVE_SYSTEMD_USER_TRUE
+systemduserunitdir
 HAVE_SYSTEMD_FALSE
 HAVE_SYSTEMD_TRUE
 systemdsystemunitdir
@@ -1021,6 +1024,7 @@ enable_option_checking
 enable_silent_rules
 enable_dependency_tracking
 with_systemdsystemunitdir
+with_systemduserunitdir
 with_android_sdk
 enable_eventfd
 enable_signalfd
@@ -1759,7 +1763,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 mpd 0.19.20 to adapt to many kinds of systems.
+\`configure' configures mpd 0.19.21 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1830,7 +1834,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of mpd 0.19.20:";;
+     short | recursive ) echo "Configuration of mpd 0.19.21:";;
    esac
   cat <<\_ACEOF
 
@@ -1936,6 +1940,8 @@ Optional Packages:
   --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
   --with-systemdsystemunitdir=DIR
                           Directory for systemd service files
+  --with-systemduserunitdir=DIR
+                          Directory for systemd service files
   --with-android-sdk=DIR  Directory for Android SDK
   --with-pollmethod=[epoll|poll|winselect|auto]
                           specify poll method for internal event loop
@@ -2175,7 +2181,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-mpd configure 0.19.20
+mpd configure 0.19.21
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2628,7 +2634,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 mpd $as_me 0.19.20, which was
+It was created by mpd $as_me 0.19.21, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2979,7 +2985,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 VERSION_MAJOR=0
 VERSION_MINOR=19
-VERSION_REVISION=20
+VERSION_REVISION=21
 VERSION_EXTRA=0
 
 
@@ -3498,7 +3504,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='mpd'
- VERSION='0.19.20'
+ VERSION='0.19.21'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -5620,6 +5626,37 @@ else
 fi
 
 
+
+# Check whether --with-systemduserunitdir was given.
+if test "${with_systemduserunitdir+set}" = set; then :
+  withval=$with_systemduserunitdir;
+else
+  with_systemduserunitdir=no
+fi
+
+if test "x$with_systemduserunitdir" = xyes; then
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for systemd" >&5
+$as_echo_n "checking for systemd... " >&6; }
+	with_systemduserunitdir=$($PKG_CONFIG --variable=systemduserunitdir systemd)
+	if test -z "$with_systemduserunitdir"; then
+		as_fn_error $? "Failed to detect systemd" "$LINENO" 5
+	fi
+	{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_systemduserunitdir" >&5
+$as_echo "$with_systemduserunitdir" >&6; }
+fi
+if test "x$with_systemduserunitdir" != xno; then
+	systemduserunitdir=$with_systemduserunitdir
+
+fi
+ if test -n "$with_systemduserunitdir" -a "x$with_systemduserunitdir" != xno ; then
+  HAVE_SYSTEMD_USER_TRUE=
+  HAVE_SYSTEMD_USER_FALSE='#'
+else
+  HAVE_SYSTEMD_USER_TRUE='#'
+  HAVE_SYSTEMD_USER_FALSE=
+fi
+
+
 AM_CPPFLAGS=""
 
 AM_CFLAGS=""
@@ -20115,7 +20152,9 @@ ac_config_files="$ac_config_files Makefile"
 
 ac_config_files="$ac_config_files doc/doxygen.conf"
 
-ac_config_files="$ac_config_files systemd/mpd.service"
+ac_config_files="$ac_config_files systemd/system/mpd.service"
+
+ac_config_files="$ac_config_files systemd/user/mpd.service"
 
 cat >confcache <<\_ACEOF
 # This file is a shell script that caches the results of configure
@@ -20258,6 +20297,10 @@ if test -z "${HAVE_SYSTEMD_TRUE}" && test -z "${HAVE_SYSTEMD_FALSE}"; then
   as_fn_error $? "conditional \"HAVE_SYSTEMD\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
+if test -z "${HAVE_SYSTEMD_USER_TRUE}" && test -z "${HAVE_SYSTEMD_USER_FALSE}"; then
+  as_fn_error $? "conditional \"HAVE_SYSTEMD_USER\" was never defined.
+Usually this means the macro was only invoked conditionally." "$LINENO" 5
+fi
 if test -z "${ANDROID_TRUE}" && test -z "${ANDROID_FALSE}"; then
   as_fn_error $? "conditional \"ANDROID\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -20963,7 +21006,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 mpd $as_me 0.19.20, which was
+This file was extended by mpd $as_me 0.19.21, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -21029,7 +21072,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="\\
-mpd config.status 0.19.20
+mpd config.status 0.19.21
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -21163,7 +21206,8 @@ do
     "src/win32/mpd_win32_rc.rc") CONFIG_FILES="$CONFIG_FILES src/win32/mpd_win32_rc.rc" ;;
     "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;;
     "doc/doxygen.conf") CONFIG_FILES="$CONFIG_FILES doc/doxygen.conf" ;;
-    "systemd/mpd.service") CONFIG_FILES="$CONFIG_FILES systemd/mpd.service" ;;
+    "systemd/system/mpd.service") CONFIG_FILES="$CONFIG_FILES systemd/system/mpd.service" ;;
+    "systemd/user/mpd.service") CONFIG_FILES="$CONFIG_FILES systemd/user/mpd.service" ;;
 
   *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;;
   esac
diff --git a/configure.ac b/configure.ac
index 67e4fd5..8662a62 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,10 +1,10 @@
 AC_PREREQ(2.60)
 
-AC_INIT(mpd, 0.19.20, musicpd-dev-team at lists.sourceforge.net)
+AC_INIT(mpd, 0.19.21, musicpd-dev-team at lists.sourceforge.net)
 
 VERSION_MAJOR=0
 VERSION_MINOR=19
-VERSION_REVISION=20
+VERSION_REVISION=21
 VERSION_EXTRA=0
 
 AC_CONFIG_SRCDIR([src/Main.cxx])
@@ -52,6 +52,22 @@ if test "x$with_systemdsystemunitdir" != xno; then
 fi
 AM_CONDITIONAL(HAVE_SYSTEMD, [test -n "$with_systemdsystemunitdir" -a "x$with_systemdsystemunitdir" != xno ])
 
+AC_ARG_WITH([systemduserunitdir],
+	    AS_HELP_STRING([--with-systemduserunitdir=DIR], [Directory for systemd service files]),
+	    [], [with_systemduserunitdir=no])
+if test "x$with_systemduserunitdir" = xyes; then
+	AC_MSG_CHECKING(for systemd)
+	with_systemduserunitdir=$($PKG_CONFIG --variable=systemduserunitdir systemd)
+	if test -z "$with_systemduserunitdir"; then
+		AC_MSG_ERROR([Failed to detect systemd])
+	fi
+	AC_MSG_RESULT([$with_systemduserunitdir])
+fi
+if test "x$with_systemduserunitdir" != xno; then
+	AC_SUBST([systemduserunitdir], [$with_systemduserunitdir])
+fi
+AM_CONDITIONAL(HAVE_SYSTEMD_USER, [test -n "$with_systemduserunitdir" -a "x$with_systemduserunitdir" != xno ])
+
 dnl ---------------------------------------------------------------------------
 dnl Declare Variables
 dnl ---------------------------------------------------------------------------
@@ -1905,7 +1921,8 @@ dnl Generate files
 dnl ---------------------------------------------------------------------------
 AC_CONFIG_FILES(Makefile)
 AC_CONFIG_FILES(doc/doxygen.conf)
-AC_CONFIG_FILES(systemd/mpd.service)
+AC_CONFIG_FILES(systemd/system/mpd.service)
+AC_CONFIG_FILES(systemd/user/mpd.service)
 AC_OUTPUT
 
 echo 'MPD is ready for compilation, type "make" to begin.'
diff --git a/doc/doxygen.conf b/doc/doxygen.conf
index 0325f24..5de7adf 100644
--- a/doc/doxygen.conf
+++ b/doc/doxygen.conf
@@ -31,7 +31,7 @@ PROJECT_NAME           = MPD
 # This could be handy for archiving the generated documentation or
 # if some version control system is used.
 
-PROJECT_NUMBER = 0.19.20
+PROJECT_NUMBER = 0.19.21
 
 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
 # base path where the generated documentation will be put.
diff --git a/doc/user.xml b/doc/user.xml
index f4317f3..c5589ad 100644
--- a/doc/user.xml
+++ b/doc/user.xml
@@ -151,7 +151,7 @@ apt-get install g++ \
         <application>systemd</application> unit files: a "service"
         unit and a "socket" unit.  These will only be installed when
         <application>MPD</application> was configured with
-        <parameter>--with-systemdsystemunitdir=/lib/systemd</parameter>.
+        <parameter>--with-systemdsystemunitdir=/lib/systemd/system</parameter>.
       </para>
 
       <para>
@@ -167,6 +167,33 @@ systemctl start mpd.socket</programlisting>
         <varname>port</varname> settings.
       </para>
     </section>
+
+    <section id="systemd_user">
+      <title><filename>systemd</filename> user unit</title>
+
+      <para>
+        You can launch <application>MPD</application> as a
+        <filename>systemd</filename> user unit.  The service file will
+        only be installed when <application>MPD</application> was
+        configured with
+        <parameter>--with-systemduserunitdir=/usr/lib/systemd/user</parameter>
+        or
+        <parameter>--with-systemduserunitdir=$HOME/.local/share/systemd/user</parameter>.
+      </para>
+
+      <para>
+        Once the user unit is installed, you can start and stop
+        <application>MPD</application> like any other service:
+      </para>
+
+      <programlisting>systemctl --user start mpd</programlisting>
+
+      <para>
+        To auto-start <application>MPD</application> upon login, type:
+      </para>
+
+      <programlisting>systemctl --user enable mpd</programlisting>
+    </section>
   </chapter>
 
   <chapter id="config">
diff --git a/src/decoder/plugins/FfmpegDecoderPlugin.cxx b/src/decoder/plugins/FfmpegDecoderPlugin.cxx
index fc28732..915ad3e 100644
--- a/src/decoder/plugins/FfmpegDecoderPlugin.cxx
+++ b/src/decoder/plugins/FfmpegDecoderPlugin.cxx
@@ -71,7 +71,6 @@ FfmpegOpenInput(AVIOContext *pb,
 
 	int err = avformat_open_input(&context, filename, fmt, nullptr);
 	if (err < 0) {
-		avformat_free_context(context);
 		SetFfmpegError(error, err, "avformat_open_input() failed");
 		return nullptr;
 	}
diff --git a/systemd/mpd.service.in b/systemd/system/mpd.service.in
similarity index 100%
copy from systemd/mpd.service.in
copy to systemd/system/mpd.service.in
diff --git a/systemd/mpd.socket b/systemd/system/mpd.socket
similarity index 100%
rename from systemd/mpd.socket
rename to systemd/system/mpd.socket
diff --git a/systemd/mpd.service.in b/systemd/user/mpd.service.in
similarity index 69%
rename from systemd/mpd.service.in
rename to systemd/user/mpd.service.in
index 250ab52..fa0f43d 100644
--- a/systemd/mpd.service.in
+++ b/systemd/user/mpd.service.in
@@ -16,11 +16,14 @@ ProtectSystem=yes
 NoNewPrivileges=yes
 ProtectKernelTunables=yes
 ProtectControlGroups=yes
-ProtectKernelModules=yes
 # AF_NETLINK is required by libsmbclient, or it will exit() .. *sigh*
 RestrictAddressFamilies=AF_INET AF_INET6 AF_UNIX AF_NETLINK
 RestrictNamespaces=yes
 
+# Note that "ProtectKernelModules=yes" is missing in the user unit
+# because systemd 232 is unable to reduce its own capabilities
+# ("Failed at step CAPABILITIES spawning /usr/bin/mpd: Operation not
+# permitted")
+
 [Install]
-WantedBy=multi-user.target
-Also=mpd.socket
+WantedBy=default.target
diff --git a/test/test_queue_priority.cxx b/test/test_queue_priority.cxx
index 517cb02..171585d 100644
--- a/test/test_queue_priority.cxx
+++ b/test/test_queue_priority.cxx
@@ -164,21 +164,6 @@ QueuePriorityTest::TestPriority()
 
 	check_descending_priority(&queue, current_order + 1);
 
-	/* priority=60 for the old prio50 item; must not be moved,
-	   because it's before the current song, and it's status
-	   hasn't changed (it was already higher before) */
-
-	unsigned c_order = 0;
-	unsigned c_position = queue.OrderToPosition(c_order);
-	CPPUNIT_ASSERT_EQUAL(50u, unsigned(queue.items[c_position].priority));
-	queue.SetPriority(c_position, 60, current_order);
-
-	current_order = queue.PositionToOrder(current_position);
-	CPPUNIT_ASSERT_EQUAL(3u, current_order);
-
-	c_order = queue.PositionToOrder(c_position);
-	CPPUNIT_ASSERT_EQUAL(0u, c_order);
-
 	/* move the prio=20 item back */
 
 	a_order = queue.PositionToOrder(a_position);

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mpd/pkg-mpd.git



More information about the Pkg-mpd-commits mailing list