wifi-scripts: fix disabled vif tracking using wrong dictionary key

wdev_update_disabled_vifs() indexed the disabled_vifs map with the wdev
object instead of the vif name. The map is read back via
disabled_vifs[vif.name], so disabled vifs were never matched, and
coercing the wdev object into a string key triggered an infinite
escaping loop in ucv_to_string_json_encoded() during state output,
causing OOM on reboot.

Suggested-by: Shayne Chen (陳軒丞) <Shayne.Chen@mediatek.com>
Reported-by: Michael-cy Lee (李峻宇) <Michael-cy.Lee@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
This commit is contained in:
Felix Fietkau
2026-06-26 19:01:46 +02:00
parent 55efd11f27
commit 7dd4779183
@@ -353,7 +353,7 @@ function wdev_update_disabled_vifs(wdev)
let name = vif.name;
if (enabled == false)
disabled[wdev] = true;
disabled[name] = true;
else if (ifindex != cache[name])
changed = true;