File

util/mathcompat.lua @ 13794:471b676e64eb 13.0

util.adminstream: Fix traceback on double-close (fixes #1913) In some circumstances, particularly with 'opportunistic_writes' and 'fatal_errors' enabled in the epoll backend, the connection may be closed halfway through the session close process (because it contains debug logging, which in the case of the watch:log() command, will trigger a write to the socket). The chosen fix is to cache session.conn in a local variable (we already did this later on, but this pulls it up to the top of the function, which is generally more correct anyway).
author Matthew Wild <mwild1@gmail.com>
date Mon, 31 Mar 2025 16:25:09 +0100
parent 12782:8815d3090928
line wrap: on
line source

if not math.type then

	local function math_type(t)
		if type(t) == "number" then
			if t % 1 == 0 and t ~= t + 1 and t ~= t - 1 then
				return "integer"
			else
				return "float"
			end
		end
	end
	_G.math.type = math_type
end