]> code.delx.au - pulseaudio/blobdiff - src/modules/module-role-cork.c
role-cork: Fix another minor leak
[pulseaudio] / src / modules / module-role-cork.c
index 8306987e46ed97b0e612ab1af246bbe47f6765d2..8f8b58dcd43c8c29d681adec69011d4e29881263 100644 (file)
@@ -225,9 +225,12 @@ int pa__init(pa_module *m) {
     if (roles) {
         const char *split_state = NULL;
         char *n = NULL;
-        while ((n = pa_split(roles, ",", &split_state)))
+        while ((n = pa_split(roles, ",", &split_state))) {
             if (n[0] != '\0')
                 pa_idxset_put(u->trigger_roles, n, NULL);
+            else
+                pa_xfree(n);
+        }
     }
     if (pa_idxset_isempty(u->trigger_roles)) {
         pa_log_debug("Using role 'phone' as trigger role.");
@@ -239,9 +242,12 @@ int pa__init(pa_module *m) {
     if (roles) {
         const char *split_state = NULL;
         char *n = NULL;
-        while ((n = pa_split(roles, ",", &split_state)))
+        while ((n = pa_split(roles, ",", &split_state))) {
             if (n[0] != '\0')
                 pa_idxset_put(u->cork_roles, n, NULL);
+            else
+                pa_xfree(n);
+        }
     }
     if (pa_idxset_isempty(u->cork_roles)) {
         pa_log_debug("Using roles 'music' and 'video' as cork roles.");