luci-base: form.js: only update option default if cfgvalue is null
authorJo-Philipp Wich <jo@mein.io>
Fri, 20 Sep 2019 07:58:31 +0000 (09:58 +0200)
committerJo-Philipp Wich <jo@mein.io>
Fri, 20 Sep 2019 07:58:31 +0000 (09:58 +0200)
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
modules/luci-base/htdocs/luci-static/resources/form.js

index 2f96ef11bbb2b875d50e99024371d9e40f53acf9..93e5f6542c818561acbf4ef6f62067143bc19b81 100644 (file)
@@ -722,6 +722,7 @@ var CBIAbstractValue = CBINode.extend({
                        return;
 
                var config_name = this.uciconfig || this.section.uciconfig || this.map.config,
+                   cfgvalue = L.toArray(this.cfgvalue(section_id))[0],
                    default_defval = null, satisified_defval = null;
 
                for (var value in this.defaults) {
@@ -739,7 +740,7 @@ var CBIAbstractValue = CBINode.extend({
                        satisified_defval = default_defval;
 
                var node = this.map.findElement('id', this.cbid(section_id));
-               if (node && node.getAttribute('data-changed') != 'true' && satisified_defval != null)
+               if (node && node.getAttribute('data-changed') != 'true' && satisified_defval != null && cfgvalue == null)
                        L.dom.callClassMethod(node, 'setValue', satisified_defval);
 
                this.default = satisified_defval;