From: Steven Barth Date: Wed, 10 Sep 2008 12:47:21 +0000 (+0000) Subject: More luci.util optimizations X-Git-Tag: 0.9.0~1354 X-Git-Url: https://git.archive.openwrt.org/?p=project%2Fluci.git;a=commitdiff_plain;h=1a4c192c65c166304014075857d7568cb4e7ae5b More luci.util optimizations --- diff --git a/libs/core/luasrc/util.lua b/libs/core/luasrc/util.lua index c84df1a17..95491cfee 100644 --- a/libs/core/luasrc/util.lua +++ b/libs/core/luasrc/util.lua @@ -194,13 +194,13 @@ end -- @param value String value containing the data to escape -- @return String value containing the escaped data function pcdata(value) - if not value then return end - value = tostring(value) - value = value:gsub("&", "&") - value = value:gsub('"', """) - value = value:gsub("'", "'") - value = value:gsub("<", "<") - return value:gsub(">", ">") + return value and tostring(value):gsub("[&\"'<>]", { + ["&"] = "&", + ['"'] = """, + ["'"] = "'", + ["<"] = "<", + [">"] = ">" + }) end --- Strip HTML tags from given string. @@ -567,13 +567,12 @@ function _sortiter( t, f ) end local _pos = 0 - local _len = table.getn( keys ) table.sort( keys, f ) return function() _pos = _pos + 1 - if _pos <= _len then + if _pos <= #keys then return keys[_pos], t[keys[_pos]] end end