From f48d10bdde46bf67f982115d93ae487b5da7a3e0 Mon Sep 17 00:00:00 2001
From: Matthias Schiffer <mschiffer@universe-factory.net>
Date: Tue, 11 Apr 2017 01:35:49 +0200
Subject: [PATCH] gluon-core: gluon.util: pass UCI cursor as argument to
 iterate_radios() instead of using local context

---
 .../luasrc/lib/gluon/upgrade/320-gluon-client-bridge-wireless   | 2 +-
 package/gluon-core/luasrc/lib/gluon/upgrade/200-wireless        | 2 +-
 package/gluon-core/luasrc/usr/lib/lua/gluon/util.lua            | 2 +-
 .../luasrc/lib/gluon/web/model/admin/privatewifi.lua            | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/package/gluon-client-bridge/luasrc/lib/gluon/upgrade/320-gluon-client-bridge-wireless b/package/gluon-client-bridge/luasrc/lib/gluon/upgrade/320-gluon-client-bridge-wireless
index 8c7e07e18..63a7ed32b 100755
--- a/package/gluon-client-bridge/luasrc/lib/gluon/upgrade/320-gluon-client-bridge-wireless
+++ b/package/gluon-client-bridge/luasrc/lib/gluon/upgrade/320-gluon-client-bridge-wireless
@@ -51,6 +51,6 @@ local function configure_radio(radio, index, config)
   configure_client(config.ap, radio, index, suffix)
 end
 
-util.iterate_radios(configure_radio)
+util.iterate_radios(uci, configure_radio)
 
 uci:save('wireless')
diff --git a/package/gluon-core/luasrc/lib/gluon/upgrade/200-wireless b/package/gluon-core/luasrc/lib/gluon/upgrade/200-wireless
index 9a356bfdb..caf23c339 100755
--- a/package/gluon-core/luasrc/lib/gluon/upgrade/200-wireless
+++ b/package/gluon-core/luasrc/lib/gluon/upgrade/200-wireless
@@ -199,7 +199,7 @@ local function configure_radio(radio, index, config)
   fixup_wan(radio, index)
 end
 
-util.iterate_radios(configure_radio)
+util.iterate_radios(uci, configure_radio)
 
 
 if uci:get('system', 'rssid_wlan0') then
diff --git a/package/gluon-core/luasrc/usr/lib/lua/gluon/util.lua b/package/gluon-core/luasrc/usr/lib/lua/gluon/util.lua
index 0bfe9ee7f..0290c349d 100644
--- a/package/gluon-core/luasrc/usr/lib/lua/gluon/util.lua
+++ b/package/gluon-core/luasrc/usr/lib/lua/gluon/util.lua
@@ -235,7 +235,7 @@ end
 -- Iterate over all radios defined in UCI calling
 -- f(radio, index, site.wifiX) for each radio found while passing
 --  site.wifi24 for 2.4 GHz devices and site.wifi5 for 5 GHz ones.
-function iterate_radios(f)
+function iterate_radios(uci, f)
 	local radios = {}
 
 	uci:foreach('wireless', 'wifi-device',
diff --git a/package/gluon-web-private-wifi/luasrc/lib/gluon/web/model/admin/privatewifi.lua b/package/gluon-web-private-wifi/luasrc/lib/gluon/web/model/admin/privatewifi.lua
index 731b94ea1..e38e75379 100644
--- a/package/gluon-web-private-wifi/luasrc/lib/gluon/web/model/admin/privatewifi.lua
+++ b/package/gluon-web-private-wifi/luasrc/lib/gluon/web/model/admin/privatewifi.lua
@@ -27,7 +27,7 @@ key.datatype = "wpakey"
 key.default = uci:get('wireless', primary_iface, "key")
 
 function f:write()
-	util.iterate_radios(function(radio, index)
+	util.iterate_radios(uci, function(radio, index)
 		local name   = "wan_" .. radio
 
 		if enabled.data then
-- 
GitLab