[alsa-devel] [PATCH] alsa-plugins: Fix destruction order on failure
Lennart Poettering
mznyfn at 0pointer.de
Thu Sep 25 21:02:32 CEST 2008
Heya!
If we failure we should make sure the event loop thread is not running
and hence not accessing our source/sink strings before we free those
strings.
---
pulse/ctl_pulse.c | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
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;
--
1.6.0.1
Lennart
--
Lennart Poettering Red Hat, Inc.
lennart [at] poettering [dot] net ICQ# 11060553
http://0pointer.net/lennart/ GnuPG 0x1A015CC4
More information about the Alsa-devel
mailing list