[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 10/20] paaudio: fix possible resource leak
From: |
Gerd Hoffmann |
Subject: |
[Qemu-devel] [PULL 10/20] paaudio: fix possible resource leak |
Date: |
Mon, 15 Jun 2015 14:28:01 +0200 |
From: Kővágó, Zoltán <address@hidden>
qpa_audio_init did not clean up resources properly if the initialization
failed. This hopefully fixes it.
Signed-off-by: Kővágó, Zoltán <address@hidden>
Signed-off-by: Gerd Hoffmann <address@hidden>
---
audio/paaudio.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/audio/paaudio.c b/audio/paaudio.c
index 35e8887..fea6071 100644
--- a/audio/paaudio.c
+++ b/audio/paaudio.c
@@ -47,6 +47,8 @@ typedef struct {
paaudio *g;
} PAVoiceIn;
+static void qpa_audio_fini(void *opaque);
+
static void GCC_FMT_ATTR (2, 3) qpa_logerr (int err, const char *fmt, ...)
{
va_list ap;
@@ -814,6 +816,8 @@ static void *qpa_audio_init (void)
{
paaudio *g = g_malloc(sizeof(paaudio));
g->conf = glob_conf;
+ g->mainloop = NULL;
+ g->context = NULL;
g->mainloop = pa_threaded_mainloop_new ();
if (!g->mainloop) {
@@ -867,7 +871,7 @@ unlock_and_fail:
pa_threaded_mainloop_unlock (g->mainloop);
fail:
AUD_log (AUDIO_CAP, "Failed to initialize PA context");
- g_free(g);
+ qpa_audio_fini(g);
return NULL;
}
--
1.8.3.1
- [Qemu-devel] [PULL 00/20] audio patch queue, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 04/20] only enable dsound in case the header file is present, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 10/20] paaudio: fix possible resource leak,
Gerd Hoffmann <=
- [Qemu-devel] [PULL 13/20] sdlaudio: do not allow multiple instances, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 14/20] MAINTAINERS: remove malc from audio, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 09/20] wavaudio: do not use global variables, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 12/20] coreaudio: do not use global variables where possible, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 15/20] audio: remove LOG_TO_MONITOR along with default_mon, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 03/20] audio: remove winwave audio driver, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 08/20] ossaudio: do not use global variables, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 16/20] audio: remove plive, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 06/20] paaudio: do not use global variables, Gerd Hoffmann, 2015/06/15
- [Qemu-devel] [PULL 02/20] audio: remove fmod backend, Gerd Hoffmann, 2015/06/15