From db29e3d69e374877e8ccfcf01ec3e9ced01198c3 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Dec 29 2013 20:07:52 +0000 Subject: alsactl valist fix --- diff --git a/alsa-utils.spec b/alsa-utils.spec index c0e00c4..f496fbf 100644 --- a/alsa-utils.spec +++ b/alsa-utils.spec @@ -4,7 +4,7 @@ Summary: Advanced Linux Sound Architecture (ALSA) utilities Name: alsa-utils Version: %{baseversion}%{?fixversion} -Release: 2%{?dist} +Release: 3%{?dist} License: GPLv2+ Group: Applications/Multimedia URL: http://www.alsa-project.org/ @@ -17,6 +17,7 @@ Source11: alsactl.conf Source20: alsa-restore.service Source21: alsa-store.service Source22: alsa-state.service +Patch1: alsactl-valist.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: alsa-lib-devel >= %{baseversion} BuildRequires: libsamplerate-devel @@ -35,6 +36,7 @@ Architecture (ALSA). %prep %setup -q -n %{name}-%{version} +%patch1 -p1 -b .alsactl-valist %build %configure CFLAGS="$RPM_OPT_FLAGS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" --disable-alsaconf \ @@ -114,6 +116,9 @@ if [ -s /etc/asound.state -a ! -s /var/lib/alsa/asound.state ] ; then fi %changelog +* Sun Dec 29 2013 Jaroslav Kysela - 1.0.27.2-3 +- Fix alsactl crash issue - rhbz#994832 + * Fri Jul 19 2013 Jaroslav Kysela - 1.0.27.2-2 - Fix alsa-state.service (rkill -> kill) - rhbz#986141 diff --git a/alsactl-valist.patch b/alsactl-valist.patch new file mode 100644 index 0000000..d131ef7 --- /dev/null +++ b/alsactl-valist.patch @@ -0,0 +1,28 @@ +diff --git a/alsactl/utils.c b/alsactl/utils.c +index 072c239..b5d183c 100644 +--- a/alsactl/utils.c ++++ b/alsactl/utils.c +@@ -150,10 +150,10 @@ void cerror_(const char *fcn, long line, int cond, const char *fmt, ...) + + if (!cond && !debugflag) + return; ++ va_start(ap, fmt); + if (use_syslog) { + syslog_(LOG_ERR, fcn, line, fmt, ap); + } else { +- va_start(ap, fmt); + fprintf(stderr, "%s: %s:%ld: ", command, fcn, line); + vfprintf(stderr, fmt, ap); + putc('\n', stderr); +@@ -167,10 +167,10 @@ void dbg_(const char *fcn, long line, const char *fmt, ...) + + if (!debugflag) + return; ++ va_start(ap, fmt); + if (use_syslog) { + syslog_(LOG_DEBUG, fcn, line, fmt, ap); + } else { +- va_start(ap, fmt); + fprintf(stderr, "%s: %s:%ld: ", command, fcn, line); + vfprintf(stderr, fmt, ap); + putc('\n', stderr);