]> err.no Git - pkg-config/commitdiff
2005-07-15 Tollef Fog Heen <tfheen@err.no>
authorArch Librarian <arch@canonical.com>
Fri, 15 Jul 2005 13:08:02 +0000 (13:08 +0000)
committerArch Librarian <arch@canonical.com>
Fri, 15 Jul 2005 13:08:02 +0000 (13:08 +0000)
Author: tfheen
Date: 2005-07-15 08:22:55 GMT
2005-07-15  Tollef Fog Heen  <tfheen@err.no>

        * pkg.c (package_get_var): Make sure to g_strdup all the return
        values and not return some values which should not be freed and
        some which should.  Yay valgrind.  Freedesktop #3682

ChangeLog
pkg.c

index abc9b0af714fb0802215fa9c3aec6cc11185b744..15fcf778358ce89774c0b23fc077a264b8a5ac6f 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
 2005-07-15  Tollef Fog Heen  <tfheen@err.no>
 
+       * pkg.c (package_get_var): Make sure to g_strdup all the return
+       values and not return some values which should not be freed and
+       some which should.  Yay valgrind.  Freedesktop #3682
+
        * configure.in: Fix default search path to be pkgconfig rather
        than pkg-config again.  Freedesktop #3662
 
diff --git a/pkg.c b/pkg.c
index 435a4b4b0a982b85c5add47325a11defba0ea28a..70ff9ced51f71ad9e94ff28744460b6bf146b87c 100644 (file)
--- a/pkg.c
+++ b/pkg.c
@@ -1200,7 +1200,7 @@ package_get_var (Package *pkg,
   char *varval = NULL;
 
   if (globals)
-    varval = g_hash_table_lookup (globals, var);
+    varval = g_strdup (g_hash_table_lookup (globals, var));
   
   if (varval == NULL && pkg->vars)
     varval = g_strdup (g_hash_table_lookup (pkg->vars, var));