]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
wifi-scripts: fix nested config accumulation in wdev_set_data
authorFelix Fietkau <nbd@nbd.name>
Wed, 4 Feb 2026 10:34:55 +0000 (10:34 +0000)
committerFelix Fietkau <nbd@nbd.name>
Sat, 7 Feb 2026 09:23:22 +0000 (09:23 +0000)
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>
package/network/config/wifi-scripts/files/lib/netifd/wireless-device.uc

index 428db6ee6af0c23b14e1bcab66deea3c5ec339c3..8168e291eb8cdc4d2b7d9eb788493b2382978931 100644 (file)
@@ -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;