From 2a0903bc5018fe17fab8abaac6d24acfa382c869 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Fri, 3 Dec 2010 12:41:12 +0000 Subject: libs/web: fix dynamic list handling --- libs/web/luasrc/cbi.lua | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) (limited to 'libs/web') diff --git a/libs/web/luasrc/cbi.lua b/libs/web/luasrc/cbi.lua index ce995803d3..6934be6908 100644 --- a/libs/web/luasrc/cbi.lua +++ b/libs/web/luasrc/cbi.lua @@ -1346,7 +1346,7 @@ function AbstractValue.cfgvalue(self, section) return value[1] end elseif self.cast == "table" then - return luci.util.split(value, "%s+", nil, true) + return { value } end end @@ -1660,11 +1660,6 @@ function DynamicList.write(self, section, value) t[#t+1] = x end end - elseif self.cast == "table" then - local x - for x in util.imatch(value) do - t[#t+1] = x - end else t = { value } end @@ -1699,12 +1694,16 @@ function DynamicList.formvalue(self, section) local value = AbstractValue.formvalue(self, section) if type(value) == "string" then - local x - local t = { } - for x in value:gmatch("%S+") do - t[#t+1] = x + if self.cast == "string" then + local x + local t = { } + for x in value:gmatch("%S+") do + t[#t+1] = x + end + value = t + else + value = { value } end - value = t end return value -- cgit v1.2.3