hashmap: Use pa_free_cb_t instead of pa_free2_cb_t

The previous patch removed module-gconf's dependency on the userdata
pointer of the free callback, and that was the only place where the
userdata pointer of pa_free2_cb_t was used, so now there's no need for
pa_free2_cb_t in pa_hashmap_free(). Using pa_free_cb_t instead allows
removing a significant amount of repetitive code.
This commit is contained in:
Tanu Kaskinen 2013-02-12 21:36:53 +02:00
parent dcf043842e
commit 8872c238ba
41 changed files with 112 additions and 308 deletions

View file

@ -1302,7 +1302,7 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
pa_xfree(device);
}
pa_hashmap_free(h, NULL, NULL);
pa_hashmap_free(h, NULL);
pa_log_error("Protocol error on reorder");
goto fail;
}
@ -1314,7 +1314,7 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
pa_xfree(device);
}
pa_hashmap_free(h, NULL, NULL);
pa_hashmap_free(h, NULL);
pa_log_error("Client specified an unknown device in it's reorder list.");
goto fail;
}
@ -1329,7 +1329,7 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
pa_xfree(device);
}
pa_hashmap_free(h, NULL, NULL);
pa_hashmap_free(h, NULL);
pa_log_error("Attempted to reorder mixed devices (sinks and sources)");
goto fail;
}
@ -1402,7 +1402,7 @@ static int extension_cb(pa_native_protocol *p, pa_module *m, pa_native_connectio
while ((device = pa_hashmap_steal_first(h))) {
devices[idx++] = device;
}
pa_hashmap_free(h, NULL, NULL);
pa_hashmap_free(h, NULL);
/* Simple bubble sort */
for (i = 0; i < n_devices; ++i) {