diff --git a/dongle.c b/dongle.c index 393d0edd7726d81d600b140271b72468024bdd50..f2d63286332dfdc7b2a80baf1d2e71d345fced9a 100644 --- a/dongle.c +++ b/dongle.c @@ -161,9 +161,11 @@ int delete_device_by_name(char *name) int delete_device(struct device *dev) { - if (dev->ubus_obj) + if (dev->ubus_obj) { unpublish_ubus_object(global_ctx, dev->ubus_obj); - // is it necessary to check if list contains this node? + dongle_destroy_dynamic_object(dev->ubus_obj); + } + list_del(&dev->list); free_device(dev); return 0;