diff --git a/src/examples/media-session/policy-node.c b/src/examples/media-session/policy-node.c index 41fe4d78e..1bcc6c257 100644 --- a/src/examples/media-session/policy-node.c +++ b/src/examples/media-session/policy-node.c @@ -871,7 +871,7 @@ static void refresh_auto_default_nodes(struct impl *impl) const char *name = pw_properties_get(node->obj->obj.props, PW_KEY_NODE_NAME); char buf[1024]; - if (strzcmp(name, def->value) == 0) + if (name == NULL || strzcmp(name, def->value) == 0) continue; free(def->value); diff --git a/src/modules/module-protocol-pulse/pulse-server.c b/src/modules/module-protocol-pulse/pulse-server.c index ae2bcb413..0c1167f8e 100644 --- a/src/modules/module-protocol-pulse/pulse-server.c +++ b/src/modules/module-protocol-pulse/pulse-server.c @@ -953,7 +953,7 @@ static void manager_metadata(void *data, struct pw_manager_object *o, } if ((changed = strzcmp(client->default_sink, value))) { free(client->default_sink); - client->default_sink = strdup(value); + client->default_sink = value ? strdup(value) : NULL; } } if (key == NULL || strcmp(key, "default.audio.source") == 0) { @@ -966,7 +966,7 @@ static void manager_metadata(void *data, struct pw_manager_object *o, } if ((changed = strzcmp(client->default_source, value))) { free(client->default_source); - client->default_source = strdup(value); + client->default_source = value ? strdup(value) : NULL; } } if (changed)