summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--modules/admin-full/luasrc/controller/admin/network.lua12
1 files changed, 10 insertions, 2 deletions
diff --git a/modules/admin-full/luasrc/controller/admin/network.lua b/modules/admin-full/luasrc/controller/admin/network.lua
index 954ba12f52..87cc040ea7 100644
--- a/modules/admin-full/luasrc/controller/admin/network.lua
+++ b/modules/admin-full/luasrc/controller/admin/network.lua
@@ -198,9 +198,17 @@ end
function wifi_delete(network)
local ntm = require "luci.model.network".init()
+ local net = ntm:get_wifinet(network)
- ntm:del_wifinet(network)
- ntm:save("wireless")
+ if net then
+ local dev = net:get_device()
+ if dev then
+ luci.sys.call("env -i /sbin/wifi down %q" % dev:name())
+ ntm:del_wifinet(network)
+ ntm:commit("wireless")
+ luci.sys.call("env -i /sbin/wifi up %q" % dev:name())
+ end
+ end
luci.http.redirect(luci.dispatcher.build_url("admin/network/wireless"))
end