From 9c0ac8baa18db6e4385d5f824c9ebeef763d476d Mon Sep 17 00:00:00 2001 From: Guilherme Bernal Date: Wed, 20 Sep 2023 20:31:09 -0300 Subject: [PATCH] fix: setmetatable should remove the metatable if the argument is null --- src/lib/globals.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/lib/globals.ts b/src/lib/globals.ts index ad27fac..593a43c 100644 --- a/src/lib/globals.ts +++ b/src/lib/globals.ts @@ -256,7 +256,7 @@ function setmetatable(table: LuaType, metatable: LuaType): Table { throw new LuaError('cannot change a protected metatable') } - TABLE.metatable = coerceArgToTable(metatable, 'setmetatable', 2) + TABLE.metatable = metatable === null ? null : coerceArgToTable(metatable, 'setmetatable', 2) return TABLE }