From ef5af553d6bb27d88a97f407fcf9f685f7e36e49 Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Tue, 31 Mar 2009 20:31:15 +0200 Subject: fix an error where a signal was accidently freed when it is tried to register it twice --- src/pulse/mainloop-signal.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'src/pulse/mainloop-signal.c') diff --git a/src/pulse/mainloop-signal.c b/src/pulse/mainloop-signal.c index 52f11c80..3dc74398 100644 --- a/src/pulse/mainloop-signal.c +++ b/src/pulse/mainloop-signal.c @@ -170,7 +170,7 @@ pa_signal_event* pa_signal_new(int sig, pa_signal_cb_t _callback, void *userdata for (e = signals; e; e = e->next) if (e->sig == sig) - goto fail; + return NULL; e = pa_xnew(pa_signal_event, 1); e->sig = sig; @@ -196,8 +196,7 @@ pa_signal_event* pa_signal_new(int sig, pa_signal_cb_t _callback, void *userdata return e; fail: - if (e) - pa_xfree(e); + pa_xfree(e); return NULL; } -- cgit