diff --git a/src/gst/gstpipewiredeviceprovider.c b/src/gst/gstpipewiredeviceprovider.c index 30c436e52..23a470a29 100644 --- a/src/gst/gstpipewiredeviceprovider.c +++ b/src/gst/gstpipewiredeviceprovider.c @@ -486,7 +486,10 @@ destroy_port (void *data) { struct port_data *pd = data; pw_log_debug("destroy %p", pd); - spa_list_remove(&pd->link); + if (pd->node_data != NULL) { + spa_list_remove(&pd->link); + pd->node_data = NULL; + } } static const struct pw_proxy_events proxy_port_events = {