OBS User unknown
2008-10-22 15:32:30 +00:00
committed by Git OBS Bridge
parent b9fde9597b
commit 62dd03d044
4 changed files with 105 additions and 4 deletions

View File

@@ -24,7 +24,7 @@ BuildRequires: alsa-devel ffmpeg-devel pkg-config
Url: http://www.alsa-project.org/
Summary: A52 Encoding Plug-In for the ALSA Library
Version: 1.0.18
Release: 1
Release: 4
License: GPL v2 or later; LGPL v2.1 or later
Group: System/Libraries
AutoReqProv: on

View File

@@ -0,0 +1,90 @@
diff --git a/pulse/ctl_pulse.c b/pulse/ctl_pulse.c
index 0b10628..8a5546c 100644
--- a/pulse/ctl_pulse.c
+++ b/pulse/ctl_pulse.c
@@ -728,14 +728,11 @@ SND_CTL_PLUGIN_DEFINE_FUNC(pulse)
return 0;
error:
- if (ctl->source)
- free(ctl->source);
- if (ctl->sink)
- free(ctl->sink);
-
if (ctl->p)
pulse_free(ctl->p);
+ free(ctl->source);
+ free(ctl->sink);
free(ctl);
return err;
diff --git a/pulse/pcm_pulse.c b/pulse/pcm_pulse.c
index 9a50aff..3d15ff0 100644
--- a/pulse/pcm_pulse.c
+++ b/pulse/pcm_pulse.c
@@ -145,18 +145,15 @@ static int pulse_start(snd_pcm_ioplug_t * io)
u = pa_stream_trigger(pcm->stream, pulse_stream_success_cb,
pcm->p);
- if (!u) {
- pa_operation_unref(o);
- err = -EIO;
- goto finish;
- }
pcm->underrun = 0;
err_o = pulse_wait_operation(pcm->p, o);
- err_u = pulse_wait_operation(pcm->p, u);
+ if (u)
+ err_u = pulse_wait_operation(pcm->p, u);
pa_operation_unref(o);
- pa_operation_unref(u);
+ if (u)
+ pa_operation_unref(u);
if (err_o < 0 || err_u < 0) {
err = -EIO;
@@ -917,6 +914,7 @@ error:
if (pcm->p)
pulse_free(pcm->p);
+ free(pcm->device);
free(pcm);
return err;
diff --git a/pulse/pulse.c b/pulse/pulse.c
index 617851e..3940238 100644
--- a/pulse/pulse.c
+++ b/pulse/pulse.c
@@ -188,9 +188,6 @@ snd_pulse_t *pulse_new(void)
if (!p->mainloop)
goto fail;
- if (pa_threaded_mainloop_start(p->mainloop) < 0)
- goto fail;
-
if (pa_get_binary_name(proc, sizeof(proc)))
snprintf(buf, sizeof(buf), "ALSA plug-in [%s]",
pa_path_get_filename(proc));
@@ -204,10 +201,19 @@ snd_pulse_t *pulse_new(void)
pa_context_set_state_callback(p->context, context_state_cb, p);
+ if (pa_threaded_mainloop_start(p->mainloop) < 0)
+ goto fail;
+
return p;
fail:
if (p->mainloop)
+ pa_threaded_mainloop_stop(p->mainloop);
+
+ if (p->context)
+ pa_context_unref(p->context);
+
+ if (p->mainloop)
pa_threaded_mainloop_free(p->mainloop);
if (p->main_fd >= 0)

View File

@@ -1,3 +1,10 @@
-------------------------------------------------------------------
Wed Oct 15 12:20:29 CEST 2008 - tiwai@suse.de
- Fix pulse plugin issues:
* broken capture returning -EIO (bnc#435058)
* small memory leak
-------------------------------------------------------------------
Wed Sep 10 18:00:38 CEST 2008 - tiwai@suse.de

View File

@@ -24,14 +24,14 @@ BuildRequires: alsa-devel dbus-1-devel libjack-devel libpulse-devel libsamplera
Url: http://www.alsa-project.org/
Summary: Extra Plug-Ins for the ALSA Library
Version: 1.0.18
Release: 1
Release: 4
License: BSD 3-Clause; LGPL v2.1 or later
Group: System/Libraries
AutoReqProv: on
Source: ftp://ftp.alsa-project.org/pub/plugins/alsa-plugins-%{package_version}.tar.bz2
Source1: asound-pulse.conf
Source2: alsa-pulse.conf
# Patch: alsa-plugins-git-fixes.diff
Patch: alsa-plugins-git-fixes.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
@@ -110,7 +110,7 @@ Authors:
%prep
%setup -q -n %{name}-%{package_version}
# %patch -p1
%patch -p1
%build
autoreconf -fi
@@ -172,6 +172,10 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/alsa-lib/*.la
%{_libdir}/alsa-lib/libasound_module_rate_samplerate*.so
%changelog
* Wed Oct 15 2008 tiwai@suse.de
- Fix pulse plugin issues:
* broken capture returning -EIO (bnc#435058)
* small memory leak
* Wed Sep 10 2008 tiwai@suse.de
- updated to version 1.0.18rc3:
* code cleanup in pulse pcm plugin