summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLeandro A. F. Pereira <leandro@hardinfo.org>2007-07-27 16:09:36 +0000
committerLeandro A. F. Pereira <leandro@hardinfo.org>2007-07-27 16:09:36 +0000
commit422425593df585b879ca45b19849da48be463fe5 (patch)
tree2005cf9496ec141337804f13312e7fee54199e6b
parentc6b3b5c9908158d490150f19a040e4b186949bc3 (diff)
Fix crashes, add Puppy Linux as a recognized distribution.
-rw-r--r--hardinfo2/arch/linux/common/os.h9
-rw-r--r--hardinfo2/computer.h1
-rw-r--r--hardinfo2/iconcache.c8
3 files changed, 16 insertions, 2 deletions
diff --git a/hardinfo2/arch/linux/common/os.h b/hardinfo2/arch/linux/common/os.h
index 0fe06709..e4f35e95 100644
--- a/hardinfo2/arch/linux/common/os.h
+++ b/hardinfo2/arch/linux/common/os.h
@@ -185,6 +185,15 @@ computer_get_os(void)
os->distro = g_strdup(buf);
}
}
+
+ if (g_str_equal(distro_db[i].codename, "ppy")) {
+ gchar *tmp;
+
+ tmp = g_strdup_printf("Puppy Linux %.2f", atof(os->distro) / 100.0);
+ g_free(os->distro);
+ os->distro = tmp;
+ }
+
os->distrocode = g_strdup(distro_db[i].codename);
break;
diff --git a/hardinfo2/computer.h b/hardinfo2/computer.h
index a6956122..ceb2b2a0 100644
--- a/hardinfo2/computer.h
+++ b/hardinfo2/computer.h
@@ -34,6 +34,7 @@ static struct {
{ DB_PREFIX "SuSE-release", "suse" },
{ DB_PREFIX "sun-release", "sun" },
{ DB_PREFIX "zenwalk-version", "zen" },
+ { DB_PREFIX "puppyversion", "ppy" },
/*
* RedHat must be the *last* one to be checked, since
* some distros (like Mandrake) includes a redhat-relase
diff --git a/hardinfo2/iconcache.c b/hardinfo2/iconcache.c
index 49325e39..af4f98c0 100644
--- a/hardinfo2/iconcache.c
+++ b/hardinfo2/iconcache.c
@@ -48,7 +48,9 @@ GdkPixbuf *icon_cache_get_pixbuf(const gchar * file)
g_free(path);
}
- g_object_ref(icon);
+ if (icon) {
+ g_object_ref(icon);
+ }
return icon;
}
@@ -81,7 +83,9 @@ GdkPixbuf *icon_cache_get_pixbuf_at_size(const gchar * file, gint wid,
g_free(path);
}
- g_object_ref(icon);
+ if (icon) {
+ g_object_ref(icon);
+ }
return icon;
}