aboutsummaryrefslogtreecommitdiff
path: root/hardinfo2/util.c
diff options
context:
space:
mode:
authorLeandro A. F. Pereira <leandro@hardinfo.org>2009-03-07 10:40:05 -0300
committerLeandro A. F. Pereira <leandro@hardinfo.org>2009-03-07 10:40:05 -0300
commitcbf3279457b072b3bb2bb7d281bfcf5665816c75 (patch)
treec8742a85fdca90f0b108cbfd1ec8edac7e22d5aa /hardinfo2/util.c
parentb7abcc9d1a0d7a12f1b4eda19e538d4dd786ffef (diff)
Also cache g_find_program_in_path() results in find_program()
Diffstat (limited to 'hardinfo2/util.c')
-rw-r--r--hardinfo2/util.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/hardinfo2/util.c b/hardinfo2/util.c
index d4ae0971..6cbc0328 100644
--- a/hardinfo2/util.c
+++ b/hardinfo2/util.c
@@ -73,8 +73,13 @@ gchar *find_program(gchar *program_name)
g_free(temp);
}
- /* search has failed; use GLib's search (which uses $PATH env var) */
- return g_find_program_in_path(program_name);
+ /* our search has failed; use GLib's search (which uses $PATH env var) */
+ if ((temp = g_find_program_in_path(program_name)) {
+ g_hash_table_insert(cache, program_name, g_strdup(temp));
+ return temp;
+ }
+
+ return NULL;
}
gchar *seconds_to_string(unsigned int seconds)