From 7aeb5ac87c6105bd8fcc9b1fd12e37ba1550f587 Mon Sep 17 00:00:00 2001 From: Simon Quigley Date: Mon, 19 Jun 2017 14:38:43 -0500 Subject: Import Upstream version 0.4.2.2 --- arch/linux/common/filesystem.h | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'arch/linux/common/filesystem.h') diff --git a/arch/linux/common/filesystem.h b/arch/linux/common/filesystem.h index 8300f278..d8166fc3 100644 --- a/arch/linux/common/filesystem.h +++ b/arch/linux/common/filesystem.h @@ -23,15 +23,23 @@ static gchar *fs_list = NULL; +static gboolean +remove_filesystem_entries(gpointer key, gpointer value, gpointer data) +{ + return g_str_has_prefix(key, "FS"); +} + static void scan_filesystems(void) { FILE *mtab; gchar buf[1024]; struct statfs sfs; + int count = 0; g_free(fs_list); fs_list = g_strdup(""); + g_hash_table_foreach_remove(moreinfo, remove_filesystem_entries, NULL); mtab = fopen("/etc/mtab", "r"); if (!mtab) @@ -71,11 +79,11 @@ scan_filesystems(void) strstr(tmp[3], "rw") ? "Read-Write" : "Read-Only", tmp[1], strsize, strused, stravail); - g_hash_table_insert(moreinfo, g_strdup(tmp[0]), strhash); + g_hash_table_insert(moreinfo, g_strdup_printf("FS%d", ++count), strhash); - fs_list = g_strdup_printf("%s$%s$%s=%s total, %s free\n", + fs_list = h_strdup_cprintf("$FS%d$%s=%s total, %s free\n", fs_list, - tmp[0], tmp[0], strsize, stravail); + count, tmp[0], strsize, stravail); g_free(strsize); g_free(stravail); -- cgit v1.2.3