From 9a9db98089717990cd5e0eef529f6bb0819ebe46 Mon Sep 17 00:00:00 2001 From: Simon Quigley Date: Wed, 16 Aug 2017 04:32:39 -0500 Subject: New upstream version 0.5.1+git20170815 --- modules/computer/memory.c | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) (limited to 'modules/computer/memory.c') diff --git a/modules/computer/memory.c b/modules/computer/memory.c index 3d320e8a..dc8599c2 100644 --- a/modules/computer/memory.c +++ b/modules/computer/memory.c @@ -28,23 +28,26 @@ computer_get_memory(void) procmem = fopen("/proc/meminfo", "r"); if (!procmem) - return NULL; + return NULL; mi = g_new0(MemoryInfo, 1); while (fgets(buffer, 128, procmem)) { - gchar **tmp = g_strsplit(buffer, ":", 2); - - tmp[0] = g_strstrip(tmp[0]); - tmp[1] = g_strstrip(tmp[1]); - - get_int("MemTotal", mi->total); - get_int("MemFree", mi->free); - get_int("Cached", mi->cached); - - g_strfreev(tmp); + gchar **tmp = g_strsplit(buffer, ":", 2); + if (tmp[1] == NULL) { + g_strfreev(tmp); + continue; + } + tmp[0] = g_strstrip(tmp[0]); + tmp[1] = g_strstrip(tmp[1]); + + get_int("MemTotal", mi->total); + get_int("MemFree", mi->free); + get_int("Cached", mi->cached); + + g_strfreev(tmp); } fclose(procmem); - + mi->used = mi->total - mi->free; mi->total /= 1000; -- cgit v1.2.3