Merge commit 'upstream/3.2.1'
[debian/amanda] / client-src / client_util.c
index a350aa0e76cc4030c02835167783728dfcab3a49..d7387e852b4ebf84f4f66474db6a53539ac27fb9 100644 (file)
@@ -66,6 +66,13 @@ fixup_relative(
     return newname;
 }
 
+/* GDestroyFunc for a hash table whose values are GSLists contianing malloc'd
+ * strings */
+static void
+destroy_slist_free_full(gpointer list) {
+    slist_free_full((GSList *)list, g_free);
+}
+
 
 static char *
 get_name(
@@ -706,8 +713,7 @@ application_property_add_to_argv(
        }
     }
 
-    g_hash_table_foreach(dle->application_property,
-                        &proplist_add_to_argv, argv_ptr);
+    property_add_to_argv(argv_ptr, dle->application_property);
     return;
 }
 
@@ -1009,7 +1015,8 @@ run_client_script(
 
     script->result = g_new0(client_script_result_t, 1);
     script->result->proplist =
-                   g_hash_table_new_full(g_str_hash, g_str_equal, NULL, NULL);
+                 g_hash_table_new_full(g_str_hash, g_str_equal,
+                                       &g_free, &destroy_slist_free_full);
     script->result->output = g_ptr_array_new();
     script->result->err = g_ptr_array_new();