From: Jo-Philipp Wich Date: Mon, 18 Aug 2008 23:43:20 +0000 (+0000) Subject: * luci/libs: fix datatype validation of list values X-Git-Tag: 0.8.0~351 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=e5608ae6b2896b5ad7d9d7c8f73b6ec1efaaddcf;p=oweals%2Fluci.git * luci/libs: fix datatype validation of list values --- diff --git a/libs/uvl/luasrc/uvl.lua b/libs/uvl/luasrc/uvl.lua index afa3cc717..361cfc410 100644 --- a/libs/uvl/luasrc/uvl.lua +++ b/libs/uvl/luasrc/uvl.lua @@ -305,11 +305,15 @@ function UVL._validate_option( self, option, nodeps ) if item.datatype and val then if self.datatypes[item.datatype] then - if not self.datatypes[item.datatype]( val ) then - return false, 'Value "' .. ( val or '' ) .. - '" of given option "' .. option:cid() .. - '" does not validate as datatype "' .. - item.datatype .. '"' + val = ( type(val) == "table" and val or { val } ) + for i, v in ipairs(val) do + if not self.datatypes[item.datatype]( v ) then + return false, 'Value' .. ( #val>1 and ' #'..i or '' ) .. + ' "' .. ( v or '' ) .. + '" of given option "' .. option:cid() .. + '" does not validate as datatype "' .. + item.datatype .. '"' + end end else return false, 'Unknown datatype "' ..