[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v2] ossaudio: fix memory leak
From: |
arei.gonglei |
Subject: |
[Qemu-devel] [PATCH v2] ossaudio: fix memory leak |
Date: |
Wed, 24 Jun 2015 17:18:17 +0800 |
From: Gonglei <address@hidden>
Variable "conf" going out of scope leaks the storage
it points to in line 856.
Signed-off-by: Gonglei <address@hidden>
---
v2:
using an better way to avoid memory leak. (Markus)
---
audio/ossaudio.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/audio/ossaudio.c b/audio/ossaudio.c
index 11e76a1..94b473b 100644
--- a/audio/ossaudio.c
+++ b/audio/ossaudio.c
@@ -848,14 +848,11 @@ static OSSConf glob_conf = {
static void *oss_audio_init (void)
{
- OSSConf *conf = g_malloc(sizeof(OSSConf));
- *conf = glob_conf;
-
- if (access(conf->devpath_in, R_OK | W_OK) < 0 ||
- access(conf->devpath_out, R_OK | W_OK) < 0) {
+ if (access(glob_conf.devpath_in, R_OK | W_OK) < 0 ||
+ access(glob_conf.devpath_out, R_OK | W_OK) < 0) {
return NULL;
}
- return conf;
+ return g_memdup(&glob_conf, sizeof(glob_conf));
}
static void oss_audio_fini (void *opaque)
--
1.7.12.4
- [Qemu-devel] [PATCH v2] ossaudio: fix memory leak,
arei.gonglei <=