From: Felix Fietkau Date: Thu, 25 Apr 2013 16:27:20 +0000 (+0200) Subject: interface: fix removing main_dev on config reload changes if ifname is reset to NULL X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=commitdiff_plain;h=b92d7fe66abb453619b996155b27641c5ce77276;ds=inline interface: fix removing main_dev on config reload changes if ifname is reset to NULL Signed-off-by: Felix Fietkau --- diff --git a/interface.c b/interface.c index 3a8fd34..a2c3f44 100644 --- a/interface.c +++ b/interface.c @@ -328,9 +328,14 @@ interface_claim_device(struct interface *iface) static void interface_cleanup_state(struct interface *iface) { + interface_set_available(iface, false); + interface_flush_state(iface); interface_clear_errors(iface); interface_set_proto_state(iface, NULL); + + if (iface->main_dev.dev) + interface_set_main_dev(iface, NULL); } static void @@ -345,9 +350,6 @@ interface_cleanup(struct interface *iface) interface_remove_user(dep); interface_ip_flush(&iface->config_ip); - if (iface->main_dev.dev) - interface_set_main_dev(iface, NULL); - interface_cleanup_state(iface); }