From fa191806c838d1b2ce127ea53db0c1d7ee2ec431 Mon Sep 17 00:00:00 2001 From: Kaarle Ritvanen Date: Thu, 17 May 2012 05:06:19 +0000 Subject: report JSON file name on parse error --- awall/policy.lua | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/awall/policy.lua b/awall/policy.lua index af00ace..a680052 100644 --- a/awall/policy.lua +++ b/awall/policy.lua @@ -74,13 +74,21 @@ end function PolicySet:loadJSON(name, fname) - local file = fname and io.open(fname) or open(name, self.importdirs) + local file + if fname then + file = io.open(fname) + else + file, fname = open(name, self.importdirs) + end if not file then error('Import failed: '..name) end local data = '' for line in file:lines() do data = data..line end file:close() - return json.decode(data) + + local success, res = pcall(json.decode, data) + if success then return res end + error(res..' while parsing '..fname) end -- cgit v1.2.3