diff options
author | Steven Barth <steven@midlink.org> | 2008-09-02 09:02:20 +0000 |
---|---|---|
committer | Steven Barth <steven@midlink.org> | 2008-09-02 09:02:20 +0000 |
commit | bdf75b1e030c2ae96d9b89219bb09a5c78176a5a (patch) | |
tree | 7b2287933f3c850dde71936dcb2ed951f5bf20e6 /libs/uci | |
parent | 765d5b8540edcbbb62bb9242b57930d249b2af09 (diff) |
libs/uci: Optimized workaround
Diffstat (limited to 'libs/uci')
-rw-r--r-- | libs/uci/luasrc/model/uci.lua | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/libs/uci/luasrc/model/uci.lua b/libs/uci/luasrc/model/uci.lua index e26f9030a..82c76ced2 100644 --- a/libs/uci/luasrc/model/uci.lua +++ b/libs/uci/luasrc/model/uci.lua @@ -153,12 +153,14 @@ function Cursor.changes(self, config) if config then return Cursor._changes(self, config) else - local changes = {} - for k,v in pairs(require "luci.fs".dir(self:get_savedir())) do - if v ~= "." and v ~= ".." then - util.update(changes, Cursor._changes(self, v)) + local changes = Cursor._changes(self) + util.copcall(function() + for k,v in pairs(require "luci.fs".dir(self:get_savedir())) do + if v ~= "." and v ~= ".." then + util.update(changes, Cursor._changes(self, v)) + end end - end + end) return changes end end |