summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Fietkau2026-02-04 10:34:55 +0000
committerFelix Fietkau2026-02-16 08:14:41 +0000
commit3e3f32506377da91d69498d06bcc9c0c7239adac (patch)
tree17b6bb19678591916f14b6434f6a371c20b4a256
parent53f88bd15b27fc1ba4a8b319061e205787032c2f (diff)
downloadopenwrt-3e3f32506377da91d69498d06bcc9c0c7239adac.tar.gz
wifi-scripts: fix nested config accumulation in wdev_set_data
When storing device-level data, wdev_set_data() spread the entire wdev object into handler_data. Since handler_config.data is set from the previous handler_data[wdev.name] before each setup, this created exponentially growing nesting with each reload, eventually causing "nesting too deep" JSON parse errors. Fix by initializing cur to a simple object containing only the device name instead of the entire wdev object. Signed-off-by: Felix Fietkau <nbd@nbd.name> (cherry picked from commit 68c2ab8f5fdf1c12966fa0cdf3c13d889beccdbe)
-rw-r--r--package/network/config/wifi-scripts/files/lib/netifd/wireless-device.uc2
1 files changed, 1 insertions, 1 deletions
diff --git a/package/network/config/wifi-scripts/files/lib/netifd/wireless-device.uc b/package/network/config/wifi-scripts/files/lib/netifd/wireless-device.uc
index 6e3a5d938f..768a421480 100644
--- a/package/network/config/wifi-scripts/files/lib/netifd/wireless-device.uc
+++ b/package/network/config/wifi-scripts/files/lib/netifd/wireless-device.uc
@@ -465,7 +465,7 @@ function wdev_mark_up(wdev)
function wdev_set_data(wdev, vif, vlan, data)
{
let config = wdev.handler_config;
- let cur = wdev;
+ let cur = { name: wdev.name };
let cur_type = "device";
if (!config)
return ubus.STATUS_INVALID_ARGUMENT;