aboutsummaryrefslogtreecommitdiff
path: root/hardinfo2
diff options
context:
space:
mode:
authorLeandro A. F. Pereira <leandro@hardinfo.org>2006-03-07 18:26:23 +0000
committerLeandro A. F. Pereira <leandro@hardinfo.org>2006-03-07 18:26:23 +0000
commitcbd8b0d401add58a06d82c7a5d7fb22b53d80714 (patch)
treeab53ee84bc763deb56a519edc538e48c51140fe9 /hardinfo2
parentfd6deac8ca43c7f9d47c0829183648d92e26aac8 (diff)
Close #6694 (Crash), fix compilation with GTK+2.6
Diffstat (limited to 'hardinfo2')
-rw-r--r--hardinfo2/arch/linux/common/filesystem.h69
-rw-r--r--hardinfo2/report.c2
2 files changed, 36 insertions, 35 deletions
diff --git a/hardinfo2/arch/linux/common/filesystem.h b/hardinfo2/arch/linux/common/filesystem.h
index 37e5a730..79784c8f 100644
--- a/hardinfo2/arch/linux/common/filesystem.h
+++ b/hardinfo2/arch/linux/common/filesystem.h
@@ -43,7 +43,7 @@ static void
scan_filesystems(void)
{
FILE *mtab;
- gchar buf[128];
+ gchar buf[1024];
struct statfs sfs;
g_free(fs_list);
@@ -53,49 +53,48 @@ scan_filesystems(void)
if (!mtab)
return;
- while (fgets(buf, 128, mtab)) {
+ while (fgets(buf, 1024, mtab)) {
gfloat size, used, avail;
gchar **tmp;
tmp = g_strsplit(buf, " ", 0);
- statfs(tmp[1], &sfs);
+ if (!statfs(tmp[1], &sfs)) {
+ size = (float) sfs.f_bsize * (float) sfs.f_blocks;
+ avail = (float) sfs.f_bsize * (float) sfs.f_bavail;
+ used = size - avail;
- size = (float) sfs.f_bsize * (float) sfs.f_blocks;
- avail = (float) sfs.f_bsize * (float) sfs.f_bavail;
- used = size - avail;
+ gchar *strsize = fs_human_readable(size),
+ *stravail = fs_human_readable(avail),
+ *strused = fs_human_readable(used);
- gchar *strsize = fs_human_readable(size),
- *stravail = fs_human_readable(avail),
- *strused = fs_human_readable(used);
+ gchar *strhash;
+ if ((strhash = g_hash_table_lookup(moreinfo, tmp[0]))) {
+ g_hash_table_remove(moreinfo, tmp[0]);
+ g_free(strhash);
+ }
- gchar *strhash;
- if ((strhash = g_hash_table_lookup(moreinfo, tmp[0]))) {
- g_hash_table_remove(moreinfo, tmp[0]);
- g_free(strhash);
- }
-
- strhash = g_strdup_printf("[%s]\n"
- "Filesystem=%s\n"
- "Mounted As=%s\n"
- "Mount Point=%s\n"
- "Size=%s\n"
- "Used=%s\n"
- "Available=%s\n",
- tmp[0],
- tmp[2],
- strstr(tmp[3],
- "rw") ? "Read-Write" :
- "Read-Only", tmp[1], strsize, strused,
- stravail);
- g_hash_table_insert(moreinfo, g_strdup(tmp[0]), strhash);
+ strhash = g_strdup_printf("[%s]\n"
+ "Filesystem=%s\n"
+ "Mounted As=%s\n"
+ "Mount Point=%s\n"
+ "Size=%s\n"
+ "Used=%s\n"
+ "Available=%s\n",
+ tmp[0],
+ tmp[2],
+ strstr(tmp[3], "rw") ? "Read-Write" :
+ "Read-Only", tmp[1], strsize, strused,
+ stravail);
+ g_hash_table_insert(moreinfo, g_strdup(tmp[0]), strhash);
- fs_list = g_strdup_printf("%s$%s$%s=%s total, %s free\n",
- fs_list,
- tmp[0], tmp[0], strsize, stravail);
+ fs_list = g_strdup_printf("%s$%s$%s=%s total, %s free\n",
+ fs_list,
+ tmp[0], tmp[0], strsize, stravail);
- g_free(strsize);
- g_free(stravail);
- g_free(strused);
+ g_free(strsize);
+ g_free(stravail);
+ g_free(strused);
+ }
g_strfreev(tmp);
}
diff --git a/hardinfo2/report.c b/hardinfo2/report.c
index 990abd8b..ca5f1afa 100644
--- a/hardinfo2/report.c
+++ b/hardinfo2/report.c
@@ -194,8 +194,10 @@ report_get_filename(void)
GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
GTK_STOCK_SAVE, GTK_RESPONSE_ACCEPT,
NULL);
+#if GTK_CHECK_VERSION(2,8,0)
gtk_file_chooser_set_do_overwrite_confirmation(GTK_FILE_CHOOSER(dialog),
TRUE);
+#endif
gtk_file_chooser_set_current_name(GTK_FILE_CHOOSER(dialog),
"hardinfo report.html");