From f4089fa71f1b288148c1a9814b58b386f25008d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Dejean?= Date: Sun, 11 Jan 2009 22:59:11 +0000 Subject: [PATCH] Fixed potential memory leak. Patch by Vincent Untz . Closes #566611. svn path=/branches/gnome-2-24/; revision=2788 --- sysdeps/linux/fsusage.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/sysdeps/linux/fsusage.c b/sysdeps/linux/fsusage.c index 7afba2d5..559ba1f9 100644 --- a/sysdeps/linux/fsusage.c +++ b/sysdeps/linux/fsusage.c @@ -129,29 +129,29 @@ get_sys_path(glibtop* server, const char *device, char **stat_path, const char * static void linux_2_6_0(glibtop *server, glibtop_fsusage *buf, const char *path) { - char *filename; + char *filename = NULL; const char *format; int ret; char buffer[BUFSIZ]; char device[64]; if (!get_device(server, path, device, sizeof device)) - return; + goto out; get_sys_path(server, device, &filename, &format); ret = try_file_to_buffer(buffer, sizeof buffer, filename); - if(ret < 0) return; + if (ret < 0) goto out; if (sscanf(buffer, format, &buf->read, &buf->write) != 2) { glibtop_warn_io_r(server, "Could not parse %s", filename); - return; + goto out; } - g_free(filename); - buf->flags |= (1 << GLIBTOP_FSUSAGE_READ) | (1 << GLIBTOP_FSUSAGE_WRITE); + out: + g_free(filename); }