From a4ac65d02a2ba5eb210fc3285f8e9d92e5132dc8 Mon Sep 17 00:00:00 2001 From: "Leandro A. F. Pereira" Date: Fri, 24 Jul 2009 01:07:06 -0300 Subject: Cleaner fix for file descriptor leak. (Ref. commit 8a77a967204d04cdf202622f22a49b76e860b1e5) --- hardinfo2/arch/linux/common/sensors.h | 2 +- hardinfo2/socket.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/hardinfo2/arch/linux/common/sensors.h b/hardinfo2/arch/linux/common/sensors.h index ae68c22a..abbe90b4 100644 --- a/hardinfo2/arch/linux/common/sensors.h +++ b/hardinfo2/arch/linux/common/sensors.h @@ -319,6 +319,7 @@ static void read_sensors_hddtemp(void) if ((s = sock_connect("127.0.0.1", 7634))) { while (!len) len = sock_read(s, buffer, sizeof(buffer)); + sock_close(s); if (len > 2 && buffer[0] == '|' && buffer[1] == '/') { gchar **disks; @@ -353,7 +354,6 @@ static void read_sensors_hddtemp(void) g_free(old); old = NULL; } - sock_close(s); if (old) { sensors = g_strconcat(sensors, "\n", old, NULL); diff --git a/hardinfo2/socket.c b/hardinfo2/socket.c index 66d3f56d..ab7ae890 100644 --- a/hardinfo2/socket.c +++ b/hardinfo2/socket.c @@ -54,6 +54,8 @@ Socket *sock_connect(gchar * host, gint port) return s; } + + close(sock); return NULL; } -- cgit v1.2.3