Hello community, here is the log from the commit of package alsa-plugins for openSUSE:Factory checked in at 2012-01-27 15:16:24 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/alsa-plugins (Old) and /work/SRC/openSUSE:Factory/.alsa-plugins.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "alsa-plugins", Maintainer is "[email protected]" Changes: -------- --- /work/SRC/openSUSE:Factory/alsa-plugins/alsa-plugins.changes 2011-10-03 09:12:16.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.alsa-plugins.new/alsa-plugins.changes 2012-01-27 15:16:30.000000000 +0100 @@ -1,0 +2,5 @@ +Wed Jan 25 11:14:55 CET 2012 - [email protected] + +- updated to version 1.0.25; including all previous fixes + +------------------------------------------------------------------- Old: ---- 0001-a52-Fix-a52-codec-with-recent-libavcodec-updates.patch 0002-Pulse-Fix-snd_pcm_avail-returning-0-in-some-cases.patch 0003-pulse-Add-fallback-option.patch 0004-pulse-Set-PA_CONTEXT_NOAUTOSPAWN-when-fallback-is-av.patch 0005-jack-Fix-hanging-applications-when-using-jack-plugin.patch 0006-pulse-only-underrun-if-no-more-data-has-been-written.patch 0007-pulse-Define-a-dummy-PA_CHECK_VERSION-when-not-avail.patch 0008-pulse-Install-a-PulseAudio-config-snippet-into-alsa..patch 0009-Set-CLOEXEC-flag-for-pipes-in-PulseAudio-plugins.patch alsa-plugins-1.0.24.tar.bz2 New: ---- alsa-plugins-1.0.25.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ alsa-plugins.spec ++++++ --- /var/tmp/diff_new_pack.HPmZsO/_old 2012-01-27 15:16:31.000000000 +0100 +++ /var/tmp/diff_new_pack.HPmZsO/_new 2012-01-27 15:16:31.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package alsa-plugins # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -15,7 +15,6 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # - %if %suse_version > 1030 %define build_pulse 1 %define build_speex 1 @@ -25,8 +24,11 @@ %endif Name: alsa-plugins -BuildRequires: alsa-devel dbus-1-devel libjack-devel libsamplerate-devel +BuildRequires: alsa-devel +BuildRequires: dbus-1-devel +BuildRequires: libjack-devel BuildRequires: libjack0 +BuildRequires: libsamplerate-devel BuildRequires: libtool %if %build_pulse BuildRequires: libpulse-devel @@ -34,13 +36,13 @@ %if %build_speex BuildRequires: speex-devel %endif -%define package_version 1.0.24 +%define package_version 1.0.25 Url: http://www.alsa-project.org/ Summary: Extra Plug-Ins for the ALSA Library -Version: 1.0.24 -Release: 13 License: LGPL-2.1+ Group: System/Libraries +Version: 1.0.25 +Release: 0 %ifarch x86_64 s390x Recommends: %{name}-32bit = %{version} %endif @@ -48,15 +50,6 @@ Source1: asound-pulse.conf Source2: alsa-pulse.conf Source3: baselibs.conf -Patch1: 0001-a52-Fix-a52-codec-with-recent-libavcodec-updates.patch -Patch2: 0002-Pulse-Fix-snd_pcm_avail-returning-0-in-some-cases.patch -Patch3: 0003-pulse-Add-fallback-option.patch -Patch4: 0004-pulse-Set-PA_CONTEXT_NOAUTOSPAWN-when-fallback-is-av.patch -Patch5: 0005-jack-Fix-hanging-applications-when-using-jack-plugin.patch -Patch6: 0006-pulse-only-underrun-if-no-more-data-has-been-written.patch -Patch7: 0007-pulse-Define-a-dummy-PA_CHECK_VERSION-when-not-avail.patch -Patch8: 0008-pulse-Install-a-PulseAudio-config-snippet-into-alsa..patch -Patch9: 0009-Set-CLOEXEC-flag-for-pipes-in-PulseAudio-plugins.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %description @@ -64,8 +57,8 @@ %package jack Summary: JACK I/O Plug-In for the ALSA Library -Group: System/Libraries License: LGPL-2.1+ +Group: System/Libraries Requires: jack %ifarch x86_64 s390x Recommends: %{name}-jack-32bit = %{version} @@ -79,8 +72,8 @@ %package pulse Summary: Pulseaudio Plug-In for the ALSA Library -Group: System/Libraries License: GPL-2.0+ ; LGPL-2.1+ +Group: System/Libraries Requires: pulseaudio %ifarch x86_64 s390x Recommends: %{name}-pulse-32bit = %{version} @@ -97,8 +90,8 @@ %package maemo Summary: Maemo Plug-Ins for the ALSA Library -Group: System/Libraries License: LGPL-2.1+ +Group: System/Libraries %description maemo This package contains the ALSA-library plug-ins using maemo SDK for @@ -106,8 +99,8 @@ %package samplerate Summary: Samplerate Plug-In for the ALSA Library -Group: System/Libraries License: GPL-2.0+ +Group: System/Libraries %ifarch x86_64 s390x Recommends: %{name}-samplerate-32bit = %{version} %endif @@ -120,8 +113,8 @@ %package speex Summary: Speex Prerocessor Plug-In for the ALSA Library -Group: System/Libraries License: LGPL-2.1+ +Group: System/Libraries %ifarch x86_64 s390x Recommends: %{name}-speex-32bit = %{version} %endif @@ -134,15 +127,6 @@ %prep %setup -q -n %{name}-%{package_version} -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 -%patch5 -p1 -%patch6 -p1 -%patch7 -p1 -%patch8 -p1 -%patch9 -p1 %build export AUTOMAKE_JOBS="%{?_smp_mflags}" ++++++ alsa-plugins-1.0.24.tar.bz2 -> alsa-plugins-1.0.25.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/Makefile.in new/alsa-plugins-1.0.25/Makefile.in --- old/alsa-plugins-1.0.24/Makefile.in 2011-01-28 15:50:52.000000000 +0100 +++ new/alsa-plugins-1.0.25/Makefile.in 2012-01-25 10:30:37.000000000 +0100 @@ -112,6 +112,7 @@ distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/a52/Makefile.in new/alsa-plugins-1.0.25/a52/Makefile.in --- old/alsa-plugins-1.0.24/a52/Makefile.in 2011-01-28 15:50:51.000000000 +0100 +++ new/alsa-plugins-1.0.25/a52/Makefile.in 2012-01-25 10:30:36.000000000 +0100 @@ -92,6 +92,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/a52/pcm_a52.c new/alsa-plugins-1.0.25/a52/pcm_a52.c --- old/alsa-plugins-1.0.24/a52/pcm_a52.c 2011-01-26 12:05:44.000000000 +0100 +++ new/alsa-plugins-1.0.25/a52/pcm_a52.c 2012-01-25 08:57:07.000000000 +0100 @@ -436,6 +436,11 @@ rec->avctx->bit_rate = rec->bitrate * 1000; rec->avctx->sample_rate = io->rate; rec->avctx->channels = io->channels; +#if LIBAVCODEC_VERSION_MAJOR > 52 || (LIBAVCODEC_VERSION_MAJOR == 52 && LIBAVCODEC_VERSION_MINOR >= 95) + rec->avctx->sample_fmt = AV_SAMPLE_FMT_S16; +#else + rec->avctx->sample_fmt = SAMPLE_FMT_S16; +#endif #if LIBAVCODEC_VERSION_MAJOR > 52 || (LIBAVCODEC_VERSION_MAJOR == 52 && LIBAVCODEC_VERSION_MINOR >= 3) switch (io->channels) { case 2: @@ -699,8 +704,13 @@ avcodec_init(); avcodec_register_all(); - rec->codec = avcodec_find_encoder(CODEC_ID_AC3); - if (! rec->codec) { + + rec->codec = avcodec_find_encoder_by_name("ac3_fixed"); + if (rec->codec == NULL) + rec->codec = avcodec_find_encoder_by_name("ac3"); + if (rec->codec == NULL) + rec->codec = avcodec_find_encoder(CODEC_ID_AC3); + if (rec->codec == NULL) { SNDERR("Cannot find codec engine"); err = -EINVAL; goto error; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/arcam-av/Makefile.in new/alsa-plugins-1.0.25/arcam-av/Makefile.in --- old/alsa-plugins-1.0.24/arcam-av/Makefile.in 2011-01-28 15:50:51.000000000 +0100 +++ new/alsa-plugins-1.0.25/arcam-av/Makefile.in 2012-01-25 10:30:36.000000000 +0100 @@ -93,6 +93,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/config.h.in new/alsa-plugins-1.0.25/config.h.in --- old/alsa-plugins-1.0.24/config.h.in 2011-01-28 15:50:51.000000000 +0100 +++ new/alsa-plugins-1.0.25/config.h.in 2012-01-25 10:30:35.000000000 +0100 @@ -1,5 +1,8 @@ /* config.h.in. Generated from configure.in by autoheader. */ +/* directory containing ALSA data files */ +#undef ALSA_DATA_DIR + /* directory containing ALSA add-on modules */ #undef ALSA_PLUGIN_DIR diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/configure new/alsa-plugins-1.0.25/configure --- old/alsa-plugins-1.0.24/configure 2011-01-28 15:50:52.000000000 +0100 +++ new/alsa-plugins-1.0.25/configure 2012-01-25 10:30:37.000000000 +0100 @@ -758,6 +758,7 @@ am__EXEEXT_TRUE LTLIBOBJS LIBOBJS +ALSA_DATA_DIR ALSA_PLUGIN_DIR USE_LIBSPEEX_FALSE USE_LIBSPEEX_TRUE @@ -915,6 +916,7 @@ with_avcodec_libdir with_speex with_plugindir +with_alsadatadir ' ac_precious_vars='build_alias host_alias @@ -1594,6 +1596,7 @@ build speex resampler (built-in code, link with external lib, or no build) --with-plugindir=dir path where ALSA plugin files are stored + --with-alsadatadir=dir path where ALSA data files are stored Some influential environment variables: CC C compiler command @@ -3084,7 +3087,7 @@ # Define the identity of the package. PACKAGE=alsa-plugins - VERSION=1.0.24 + VERSION=1.0.25 cat >>confdefs.h <<_ACEOF @@ -4861,7 +4864,7 @@ ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 4864 "configure"' > conftest.$ac_ext + echo '#line 4867 "configure"' > conftest.$ac_ext if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -6985,11 +6988,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:6988: $lt_compile\"" >&5) + (eval echo "\"\$as_me:6991: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:6992: \$? = $ac_status" >&5 + echo "$as_me:6995: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -7253,11 +7256,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7256: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7259: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:7260: \$? = $ac_status" >&5 + echo "$as_me:7263: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -7357,11 +7360,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7360: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7363: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:7364: \$? = $ac_status" >&5 + echo "$as_me:7367: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -9326,7 +9329,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 9329 "configure" +#line 9332 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -9426,7 +9429,7 @@ lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 9429 "configure" +#line 9432 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11702,11 +11705,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11705: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11708: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:11709: \$? = $ac_status" >&5 + echo "$as_me:11712: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -11806,11 +11809,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:11809: $lt_compile\"" >&5) + (eval echo "\"\$as_me:11812: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:11813: \$? = $ac_status" >&5 + echo "$as_me:11816: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -13376,11 +13379,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13379: $lt_compile\"" >&5) + (eval echo "\"\$as_me:13382: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:13383: \$? = $ac_status" >&5 + echo "$as_me:13386: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -13480,11 +13483,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:13483: $lt_compile\"" >&5) + (eval echo "\"\$as_me:13486: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:13487: \$? = $ac_status" >&5 + echo "$as_me:13490: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -15632,11 +15635,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15635: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15638: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15639: \$? = $ac_status" >&5 + echo "$as_me:15642: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -15900,11 +15903,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:15903: $lt_compile\"" >&5) + (eval echo "\"\$as_me:15906: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:15907: \$? = $ac_status" >&5 + echo "$as_me:15910: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -16004,11 +16007,11 @@ -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:16007: $lt_compile\"" >&5) + (eval echo "\"\$as_me:16010: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:16011: \$? = $ac_status" >&5 + echo "$as_me:16014: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -19707,6 +19710,30 @@ +# Check whether --with-alsadatadir was given. +if test "${with_alsadatadir+set}" = set; then : + withval=$with_alsadatadir; alsadatadir="$withval" +else + alsadatadir="" +fi + +if test -z "$alsadatadir"; then + eval dir="$datadir" + case "$dir" in + /*) ;; + *) dir="$dir" + esac + alsadatadir="$dir/alsa" +fi + +cat >>confdefs.h <<_ACEOF +#define ALSA_DATA_DIR "$alsadatadir" +_ACEOF + +ALSA_DATA_DIR="$alsadatadir" + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for plugins version" >&5 $as_echo_n "checking for plugins version... " >&6; } SND_PLUGINS_VERSION=$VERSION diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/configure.in new/alsa-plugins-1.0.25/configure.in --- old/alsa-plugins-1.0.24/configure.in 2011-01-26 12:05:44.000000000 +0100 +++ new/alsa-plugins-1.0.25/configure.in 2012-01-25 08:57:07.000000000 +0100 @@ -1,6 +1,6 @@ AC_PREREQ(2.59) AC_INIT(oss/pcm_oss.c) -AM_INIT_AUTOMAKE(alsa-plugins, 1.0.24) +AM_INIT_AUTOMAKE(alsa-plugins, 1.0.25) AC_PREFIX_DEFAULT(/usr) AC_CONFIG_HEADERS(config.h) @@ -131,10 +131,10 @@ AM_CONDITIONAL(HAVE_PPH, test "$PPH" = "builtin" -o "$PPH" = "lib") AM_CONDITIONAL(USE_LIBSPEEX, test "$PPH" = "lib") -dnl ALSA plugin directory test "x$prefix" = xNONE && prefix=$ac_default_prefix test "x$exec_prefix" = xNONE && exec_prefix=$prefix +dnl ALSA plugin directory AC_ARG_WITH(plugindir, AS_HELP_STRING([--with-plugindir=dir], [path where ALSA plugin files are stored]), @@ -151,6 +151,23 @@ ALSA_PLUGIN_DIR="$plugindir" AC_SUBST(ALSA_PLUGIN_DIR) +dnl ALSA data directory +AC_ARG_WITH(alsadatadir, + AS_HELP_STRING([--with-alsadatadir=dir], + [path where ALSA data files are stored]), + alsadatadir="$withval", alsadatadir="") +if test -z "$alsadatadir"; then + eval dir="$datadir" + case "$dir" in + /*) ;; + *) dir="$dir" + esac + alsadatadir="$dir/alsa" +fi +AC_DEFINE_UNQUOTED(ALSA_DATA_DIR, "$alsadatadir", [directory containing ALSA data files]) +ALSA_DATA_DIR="$alsadatadir" +AC_SUBST(ALSA_DATA_DIR) + SAVE_PLUGINS_VERSION AC_OUTPUT([ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/doc/Makefile.in new/alsa-plugins-1.0.25/doc/Makefile.in --- old/alsa-plugins-1.0.24/doc/Makefile.in 2011-01-28 15:50:51.000000000 +0100 +++ new/alsa-plugins-1.0.25/doc/Makefile.in 2012-01-25 10:30:36.000000000 +0100 @@ -49,6 +49,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/doc/README-pulse new/alsa-plugins-1.0.25/doc/README-pulse --- old/alsa-plugins-1.0.24/doc/README-pulse 2011-01-26 12:05:44.000000000 +0100 +++ new/alsa-plugins-1.0.25/doc/README-pulse 2012-01-25 08:57:07.000000000 +0100 @@ -39,3 +39,22 @@ If you do not specify any source and/or sink, then the server's defaults will be used. + +When "fallback" option is set, the plugin will try to open the given PCM +(or control) automatically when connecting to PA server fails. Typically, +it should point to "sysdefault", which was introduced recently in alsa-lib, +so that the system-default setup is used even when you overwrite "default" +PCM and control definitions. + + pcm.pulse { + type pulse + fallback "sysdefault" + } + + ctl.pulse { + type pulse + fallback "sysdefault" + } + + pcm.!default "pulse" + ctl.!default "pulse" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/jack/Makefile.in new/alsa-plugins-1.0.25/jack/Makefile.in --- old/alsa-plugins-1.0.24/jack/Makefile.in 2011-01-28 15:50:51.000000000 +0100 +++ new/alsa-plugins-1.0.25/jack/Makefile.in 2012-01-25 10:30:36.000000000 +0100 @@ -92,6 +92,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/jack/pcm_jack.c new/alsa-plugins-1.0.25/jack/pcm_jack.c --- old/alsa-plugins-1.0.24/jack/pcm_jack.c 2011-01-26 12:05:44.000000000 +0100 +++ new/alsa-plugins-1.0.25/jack/pcm_jack.c 2012-01-25 08:57:07.000000000 +0100 @@ -77,7 +77,7 @@ return 0; } -static int snd_pcm_jack_poll_revents(snd_pcm_ioplug_t *io ATTRIBUTE_UNUSED, +static int snd_pcm_jack_poll_revents(snd_pcm_ioplug_t *io, struct pollfd *pfds, unsigned int nfds, unsigned short *revents) { @@ -87,7 +87,9 @@ read(pfds[0].fd, buf, 1); - *revents = pfds[0].revents; + *revents = pfds[0].revents & ~(POLLIN | POLLOUT); + if (pfds[0].revents & POLLIN) + *revents |= (io->stream == SND_PCM_STREAM_PLAYBACK) ? POLLOUT : POLLIN; return 0; } @@ -307,6 +309,19 @@ return 0; } +static int make_nonblock(int fd) +{ + int fl; + + if ((fl = fcntl(fd, F_GETFL)) < 0) + return fl; + + if (fl & O_NONBLOCK) + return 0; + + return fcntl(fd, F_SETFL, fl | O_NONBLOCK); +} + static int snd_pcm_jack_open(snd_pcm_t **pcmp, const char *name, snd_config_t *playback_conf, snd_config_t *capture_conf, @@ -363,6 +378,9 @@ socketpair(AF_LOCAL, SOCK_STREAM, 0, fd); + make_nonblock(fd[0]); + make_nonblock(fd[1]); + jack->fd = fd[0]; jack->io.version = SND_PCM_IOPLUG_VERSION; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/maemo/Makefile.in new/alsa-plugins-1.0.25/maemo/Makefile.in --- old/alsa-plugins-1.0.24/maemo/Makefile.in 2011-01-28 15:50:51.000000000 +0100 +++ new/alsa-plugins-1.0.25/maemo/Makefile.in 2012-01-25 10:30:36.000000000 +0100 @@ -106,6 +106,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/mix/Makefile.in new/alsa-plugins-1.0.25/mix/Makefile.in --- old/alsa-plugins-1.0.24/mix/Makefile.in 2011-01-28 15:50:51.000000000 +0100 +++ new/alsa-plugins-1.0.25/mix/Makefile.in 2012-01-25 10:30:36.000000000 +0100 @@ -100,6 +100,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/oss/Makefile.in new/alsa-plugins-1.0.25/oss/Makefile.in --- old/alsa-plugins-1.0.24/oss/Makefile.in 2011-01-28 15:50:52.000000000 +0100 +++ new/alsa-plugins-1.0.25/oss/Makefile.in 2012-01-25 10:30:36.000000000 +0100 @@ -100,6 +100,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/pph/Makefile.in new/alsa-plugins-1.0.25/pph/Makefile.in --- old/alsa-plugins-1.0.24/pph/Makefile.in 2011-01-28 15:50:52.000000000 +0100 +++ new/alsa-plugins-1.0.25/pph/Makefile.in 2012-01-25 10:30:36.000000000 +0100 @@ -106,6 +106,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/pulse/50-pulseaudio.conf new/alsa-plugins-1.0.25/pulse/50-pulseaudio.conf --- old/alsa-plugins-1.0.24/pulse/50-pulseaudio.conf 1970-01-01 01:00:00.000000000 +0100 +++ new/alsa-plugins-1.0.25/pulse/50-pulseaudio.conf 2012-01-25 08:57:07.000000000 +0100 @@ -0,0 +1,13 @@ +# Add a specific named PulseAudio pcm and ctl (typically useful for testing) + +pcm.pulse { + type pulse + hint { + show on + description "PulseAudio Sound Server" + } +} + +ctl.pulse { + type pulse +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/pulse/99-pulseaudio-default.conf.example new/alsa-plugins-1.0.25/pulse/99-pulseaudio-default.conf.example --- old/alsa-plugins-1.0.24/pulse/99-pulseaudio-default.conf.example 1970-01-01 01:00:00.000000000 +0100 +++ new/alsa-plugins-1.0.25/pulse/99-pulseaudio-default.conf.example 2012-01-25 08:57:07.000000000 +0100 @@ -0,0 +1,13 @@ +# Default to PulseAudio + +pcm.!default { + type pulse + hint { + show on + description "Default ALSA Output (currently PulseAudio Sound Server)" + } +} + +ctl.!default { + type pulse +} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/pulse/Makefile.am new/alsa-plugins-1.0.25/pulse/Makefile.am --- old/alsa-plugins-1.0.24/pulse/Makefile.am 2011-01-26 12:05:44.000000000 +0100 +++ new/alsa-plugins-1.0.25/pulse/Makefile.am 2012-01-25 08:57:07.000000000 +0100 @@ -1,10 +1,14 @@ +EXTRA_DIST = 50-pulseaudio.conf 99-pulseaudio-default.conf.example + asound_module_pcm_LTLIBRARIES = libasound_module_pcm_pulse.la asound_module_ctl_LTLIBRARIES = libasound_module_ctl_pulse.la asound_module_conf_LTLIBRARIES = libasound_module_conf_pulse.la +asound_module_data_DATA = 50-pulseaudio.conf 99-pulseaudio-default.conf.example asound_module_pcmdir = @ALSA_PLUGIN_DIR@ asound_module_ctldir = @ALSA_PLUGIN_DIR@ asound_module_confdir = @ALSA_PLUGIN_DIR@ +asound_module_datadir = @ALSA_DATA_DIR@/alsa.conf.d AM_CFLAGS = -Wall -g @ALSA_CFLAGS@ $(PTHREAD_CFLAGS) $(pulseaudio_CFLAGS) -D_GNU_SOURCE AM_LDFLAGS = -module -avoid-version -export-dynamic -no-undefined $(LDFLAGS_NOUNDEFINED) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/pulse/Makefile.in new/alsa-plugins-1.0.25/pulse/Makefile.in --- old/alsa-plugins-1.0.24/pulse/Makefile.in 2011-01-28 15:50:52.000000000 +0100 +++ new/alsa-plugins-1.0.25/pulse/Makefile.in 2012-01-25 10:30:37.000000000 +0100 @@ -15,6 +15,7 @@ @SET_MAKE@ + VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ @@ -68,7 +69,8 @@ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' am__installdirs = "$(DESTDIR)$(asound_module_confdir)" \ "$(DESTDIR)$(asound_module_ctldir)" \ - "$(DESTDIR)$(asound_module_pcmdir)" + "$(DESTDIR)$(asound_module_pcmdir)" \ + "$(DESTDIR)$(asound_module_datadir)" LTLIBRARIES = $(asound_module_conf_LTLIBRARIES) \ $(asound_module_ctl_LTLIBRARIES) \ $(asound_module_pcm_LTLIBRARIES) @@ -104,11 +106,13 @@ DIST_SOURCES = $(libasound_module_conf_pulse_la_SOURCES) \ $(libasound_module_ctl_pulse_la_SOURCES) \ $(libasound_module_pcm_pulse_la_SOURCES) +DATA = $(asound_module_data_DATA) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ @@ -231,12 +235,15 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ +EXTRA_DIST = 50-pulseaudio.conf 99-pulseaudio-default.conf.example asound_module_pcm_LTLIBRARIES = libasound_module_pcm_pulse.la asound_module_ctl_LTLIBRARIES = libasound_module_ctl_pulse.la asound_module_conf_LTLIBRARIES = libasound_module_conf_pulse.la +asound_module_data_DATA = 50-pulseaudio.conf 99-pulseaudio-default.conf.example asound_module_pcmdir = @ALSA_PLUGIN_DIR@ asound_module_ctldir = @ALSA_PLUGIN_DIR@ asound_module_confdir = @ALSA_PLUGIN_DIR@ +asound_module_datadir = @ALSA_DATA_DIR@/alsa.conf.d AM_CFLAGS = -Wall -g @ALSA_CFLAGS@ $(PTHREAD_CFLAGS) $(pulseaudio_CFLAGS) -D_GNU_SOURCE AM_LDFLAGS = -module -avoid-version -export-dynamic -no-undefined $(LDFLAGS_NOUNDEFINED) libasound_module_pcm_pulse_la_SOURCES = pcm_pulse.c pulse.c pulse.h @@ -416,6 +423,26 @@ clean-libtool: -rm -rf .libs _libs +install-asound_module_dataDATA: $(asound_module_data_DATA) + @$(NORMAL_INSTALL) + test -z "$(asound_module_datadir)" || $(MKDIR_P) "$(DESTDIR)$(asound_module_datadir)" + @list='$(asound_module_data_DATA)'; test -n "$(asound_module_datadir)" || list=; \ + 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)$(asound_module_datadir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(asound_module_datadir)" || exit $$?; \ + done + +uninstall-asound_module_dataDATA: + @$(NORMAL_UNINSTALL) + @list='$(asound_module_data_DATA)'; test -n "$(asound_module_datadir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '$(DESTDIR)$(asound_module_datadir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(asound_module_datadir)" && rm -f $$files ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ @@ -501,9 +528,9 @@ done check-am: all-am check: check-am -all-am: Makefile $(LTLIBRARIES) +all-am: Makefile $(LTLIBRARIES) $(DATA) installdirs: - for dir in "$(DESTDIR)$(asound_module_confdir)" "$(DESTDIR)$(asound_module_ctldir)" "$(DESTDIR)$(asound_module_pcmdir)"; do \ + for dir in "$(DESTDIR)$(asound_module_confdir)" "$(DESTDIR)$(asound_module_ctldir)" "$(DESTDIR)$(asound_module_pcmdir)" "$(DESTDIR)$(asound_module_datadir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done install: install-am @@ -558,6 +585,7 @@ install-data-am: install-asound_module_confLTLIBRARIES \ install-asound_module_ctlLTLIBRARIES \ + install-asound_module_dataDATA \ install-asound_module_pcmLTLIBRARIES install-dvi: install-dvi-am @@ -606,6 +634,7 @@ uninstall-am: uninstall-asound_module_confLTLIBRARIES \ uninstall-asound_module_ctlLTLIBRARIES \ + uninstall-asound_module_dataDATA \ uninstall-asound_module_pcmLTLIBRARIES .MAKE: install-am install-strip @@ -619,6 +648,7 @@ html-am info info-am install install-am \ install-asound_module_confLTLIBRARIES \ install-asound_module_ctlLTLIBRARIES \ + install-asound_module_dataDATA \ install-asound_module_pcmLTLIBRARIES install-data \ install-data-am install-dvi install-dvi-am install-exec \ install-exec-am install-html install-html-am install-info \ @@ -630,6 +660,7 @@ tags uninstall uninstall-am \ uninstall-asound_module_confLTLIBRARIES \ uninstall-asound_module_ctlLTLIBRARIES \ + uninstall-asound_module_dataDATA \ uninstall-asound_module_pcmLTLIBRARIES diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/pulse/ctl_pulse.c new/alsa-plugins-1.0.25/pulse/ctl_pulse.c --- old/alsa-plugins-1.0.24/pulse/ctl_pulse.c 2011-01-26 12:05:44.000000000 +0100 +++ new/alsa-plugins-1.0.25/pulse/ctl_pulse.c 2012-01-25 08:57:07.000000000 +0100 @@ -647,6 +647,7 @@ const char *device = NULL; const char *source = NULL; const char *sink = NULL; + const char *fallback_name = NULL; int err; snd_ctl_pulse_t *ctl; pa_operation *o; @@ -687,10 +688,20 @@ } continue; } + if (strcmp(id, "fallback") == 0) { + if (snd_config_get_string(n, &fallback_name) < 0) { + SNDERR("Invalid value for %s", id); + return -EINVAL; + } + continue; + } SNDERR("Unknown field %s", id); return -EINVAL; } + if (fallback_name && name && !strcmp(name, fallback_name)) + fallback_name = NULL; /* no fallback for the same name */ + ctl = calloc(1, sizeof(*ctl)); if (!ctl) return -ENOMEM; @@ -701,7 +712,7 @@ goto error; } - err = pulse_connect(ctl->p, server); + err = pulse_connect(ctl->p, server, fallback_name != NULL); if (err < 0) goto error; @@ -794,6 +805,10 @@ free(ctl->sink); free(ctl); + if (fallback_name) + return snd_ctl_open_fallback(handlep, root, + fallback_name, name, mode); + return err; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/pulse/pcm_pulse.c new/alsa-plugins-1.0.25/pulse/pcm_pulse.c --- old/alsa-plugins-1.0.24/pulse/pcm_pulse.c 2011-01-26 12:05:44.000000000 +0100 +++ new/alsa-plugins-1.0.25/pulse/pcm_pulse.c 2012-01-25 08:57:07.000000000 +0100 @@ -42,6 +42,7 @@ int handle_underrun; size_t offset; + int64_t written; pa_stream *stream; @@ -92,8 +93,8 @@ size -= pcm->offset; /* Prevent accidental overrun of the fake ringbuffer */ - if (size >= pcm->buffer_attr.tlength) - size = pcm->buffer_attr.tlength-1; + if (size > pcm->buffer_attr.tlength - pcm->frame_size) + size = pcm->buffer_attr.tlength - pcm->frame_size; if (size > pcm->last_size) { pcm->ptr += size - pcm->last_size; @@ -460,6 +461,7 @@ /* Make sure the buffer pointer is in sync */ pcm->last_size -= writebytes; + pcm->written += writebytes; ret = update_ptr(pcm); if (ret < 0) goto finish; @@ -585,6 +587,19 @@ update_active(pcm); } +#ifndef PA_CHECK_VERSION +#define PA_CHECK_VERSION(x, y, z) 0 +#endif + +#if PA_CHECK_VERSION(0,99,0) +#define DEFAULT_HANDLE_UNDERRUN 1 +#define do_underrun_detect(pcm, p) \ + ((pcm)->written <= pa_stream_get_underflow_index(p)) +#else +#define DEFAULT_HANDLE_UNDERRUN 0 +#define do_underrun_detect(pcm, p) 1 /* always true */ +#endif + static void stream_underrun_cb(pa_stream * p, void *userdata) { snd_pcm_pulse_t *pcm = userdata; @@ -594,7 +609,8 @@ if (!pcm->p) return; - pcm->underrun = 1; + if (do_underrun_detect(pcm, p)) + pcm->underrun = 1; } static void stream_latency_cb(pa_stream *p, void *userdata) { @@ -739,6 +755,7 @@ pcm->offset = 0; pcm->underrun = 0; + pcm->written = 0; /* Reset fake ringbuffer */ pcm->last_size = 0; @@ -982,7 +999,8 @@ snd_config_iterator_t i, next; const char *server = NULL; const char *device = NULL; - int handle_underrun = 0; + const char *fallback_name = NULL; + int handle_underrun = DEFAULT_HANDLE_UNDERRUN; int err; snd_pcm_pulse_t *pcm; @@ -1016,10 +1034,20 @@ handle_underrun = err; continue; } + if (strcmp(id, "fallback") == 0) { + if (snd_config_get_string(n, &fallback_name) < 0) { + SNDERR("Invalid value for %s", id); + return -EINVAL; + } + continue; + } SNDERR("Unknown field %s", id); return -EINVAL; } + if (fallback_name && name && !strcmp(name, fallback_name)) + fallback_name = NULL; /* no fallback for the same name */ + pcm = calloc(1, sizeof(*pcm)); if (!pcm) return -ENOMEM; @@ -1041,7 +1069,7 @@ pcm->handle_underrun = handle_underrun; - err = pulse_connect(pcm->p, server); + err = pulse_connect(pcm->p, server, fallback_name != NULL); if (err < 0) goto error; @@ -1074,6 +1102,10 @@ free(pcm->device); free(pcm); + if (fallback_name) + return snd_pcm_open_fallback(pcmp, root, fallback_name, name, + stream, mode); + return err; } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/pulse/pulse.c new/alsa-plugins-1.0.25/pulse/pulse.c --- old/alsa-plugins-1.0.24/pulse/pulse.c 2011-01-26 12:05:44.000000000 +0100 +++ new/alsa-plugins-1.0.25/pulse/pulse.c 2012-01-25 08:57:07.000000000 +0100 @@ -114,6 +114,11 @@ return fcntl(fd, F_SETFL, fl | O_NONBLOCK); } +static int make_close_on_exec(int fd) +{ + return fcntl(fd, F_SETFD, FD_CLOEXEC); +} + snd_pulse_t *pulse_new(void) { snd_pulse_t *p; @@ -134,7 +139,9 @@ p->thread_fd = fd[1]; make_nonblock(p->main_fd); + make_close_on_exec(p->main_fd); make_nonblock(p->thread_fd); + make_close_on_exec(p->thread_fd); p->mainloop = pa_threaded_mainloop_new(); if (!p->mainloop) @@ -188,13 +195,19 @@ free(p); } -int pulse_connect(snd_pulse_t * p, const char *server) +int pulse_connect(snd_pulse_t * p, const char *server, int can_fallback) { int err; + pa_context_flags_t flags; pa_context_state_t state; assert(p); + if (can_fallback) + flags = PA_CONTEXT_NOAUTOSPAWN; + else + flags = 0; + if (!p->context || !p->mainloop) return -EBADFD; @@ -204,7 +217,7 @@ pa_threaded_mainloop_lock(p->mainloop); - err = pa_context_connect(p->context, server, 0, NULL); + err = pa_context_connect(p->context, server, flags, NULL); if (err < 0) goto error; @@ -225,8 +238,9 @@ return 0; error: - SNDERR("PulseAudio: Unable to connect: %s\n", - pa_strerror(pa_context_errno(p->context))); + if (!can_fallback) + SNDERR("PulseAudio: Unable to connect: %s\n", + pa_strerror(pa_context_errno(p->context))); pa_threaded_mainloop_unlock(p->mainloop); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/pulse/pulse.h new/alsa-plugins-1.0.25/pulse/pulse.h --- old/alsa-plugins-1.0.24/pulse/pulse.h 2011-01-26 12:05:44.000000000 +0100 +++ new/alsa-plugins-1.0.25/pulse/pulse.h 2012-01-25 08:57:07.000000000 +0100 @@ -42,7 +42,7 @@ snd_pulse_t *pulse_new(void); void pulse_free(snd_pulse_t * p); -int pulse_connect(snd_pulse_t * p, const char *server); +int pulse_connect(snd_pulse_t * p, const char *server, int can_fallback); void pulse_poll_activate(snd_pulse_t * p); void pulse_poll_deactivate(snd_pulse_t * p); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/rate/Makefile.in new/alsa-plugins-1.0.25/rate/Makefile.in --- old/alsa-plugins-1.0.24/rate/Makefile.in 2011-01-28 15:50:52.000000000 +0100 +++ new/alsa-plugins-1.0.25/rate/Makefile.in 2012-01-25 10:30:37.000000000 +0100 @@ -92,6 +92,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/rate-lavc/Makefile.in new/alsa-plugins-1.0.25/rate-lavc/Makefile.in --- old/alsa-plugins-1.0.24/rate-lavc/Makefile.in 2011-01-28 15:50:52.000000000 +0100 +++ new/alsa-plugins-1.0.25/rate-lavc/Makefile.in 2012-01-25 10:30:37.000000000 +0100 @@ -95,6 +95,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/speex/Makefile.in new/alsa-plugins-1.0.25/speex/Makefile.in --- old/alsa-plugins-1.0.24/speex/Makefile.in 2011-01-28 15:50:52.000000000 +0100 +++ new/alsa-plugins-1.0.25/speex/Makefile.in 2012-01-25 10:30:37.000000000 +0100 @@ -92,6 +92,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/usb_stream/Makefile.in new/alsa-plugins-1.0.25/usb_stream/Makefile.in --- old/alsa-plugins-1.0.24/usb_stream/Makefile.in 2011-01-28 15:50:52.000000000 +0100 +++ new/alsa-plugins-1.0.25/usb_stream/Makefile.in 2012-01-25 10:30:37.000000000 +0100 @@ -95,6 +95,7 @@ DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALSA_CFLAGS = @ALSA_CFLAGS@ +ALSA_DATA_DIR = @ALSA_DATA_DIR@ ALSA_LIBS = @ALSA_LIBS@ ALSA_PLUGIN_DIR = @ALSA_PLUGIN_DIR@ AMTAR = @AMTAR@ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/alsa-plugins-1.0.24/version new/alsa-plugins-1.0.25/version --- old/alsa-plugins-1.0.24/version 2011-01-28 15:50:59.000000000 +0100 +++ new/alsa-plugins-1.0.25/version 2012-01-25 10:30:43.000000000 +0100 @@ -1 +1 @@ -1.0.24 +1.0.25 -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
