Changeset

12499:03e307952816 0.12

util.jsonpointer: Fix Lua <5.3 compat
author Kim Alvefur <zash@zash.se>
date Mon, 09 May 2022 22:36:57 +0200 (2022-05-09)
parents 12496:87c3d45208ef
children 12500:88e1b94105ae
files util/jsonpointer.lua
diffstat 1 files changed, 5 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/util/jsonpointer.lua	Sun May 08 18:04:50 2022 +0200
+++ b/util/jsonpointer.lua	Mon May 09 22:36:57 2022 +0200
@@ -1,3 +1,7 @@
+local m_type = math.type or function (n)
+	return n % 1 == 0 and n <= 9007199254740992 and n >= -9007199254740992 and "integer" or "float";
+end;
+
 local function unescape_token(escaped_token)
 	local unescaped = escaped_token:gsub("~1", "/"):gsub("~0", "~")
 	return unescaped
@@ -15,7 +19,7 @@
 
 		if type(idx) == "string" then
 			new_ref = ref[token]
-		elseif math.type(idx) == "integer" then
+		elseif m_type(idx) == "integer" then
 			local i = tonumber(token)
 			if token == "-" then
 				i = #ref + 1