File

tools/linedebug.lua @ 11739:e0d0680e04cc

core.storagemanager: Respect archive ids issued by storage drivers in tests Storage drivers may issue their own IDs tho none of the included ones do this atm, but the 3rd party module mod_storage_xmlarchive has its special format.
author Kim Alvefur <zash@zash.se>
date Sun, 15 Aug 2021 12:28:58 +0200
parent 11193:5850d24a4ad3
line wrap: on
line source

local data = {}
local getinfo = debug.getinfo;
local function linehook(ev, li)
	local S = getinfo(2, "S");
	if S and S.source and S.source:match"^@" then
		local file = S.source:sub(2);
		local lines = data[file];
		if not lines then
			lines = {};
			data[file] = lines;
			for line in io.lines(file) do
				lines[#lines+1] = line;
			end
		end
		io.stderr:write(ev, " ", file, " ", li, " ", lines[li], "\n");
	end
end
debug.sethook(linehook, "l");