aboutsummaryrefslogtreecommitdiff
path: root/builtin/common
diff options
context:
space:
mode:
authorDesour <vorunbekannt75@web.de>2022-01-02 17:16:16 +0100
committerShadowNinja <ShadowNinja@users.noreply.github.com>2022-01-02 22:15:41 -0500
commit196562870552b156265feb83043da2bc21bd6246 (patch)
tree19b0820ed7d10a92271f071466b9a88da0a36379 /builtin/common
parent84fdd369d45314a5b7946ff66fe5fce85c1abc1f (diff)
downloadminetest-196562870552b156265feb83043da2bc21bd6246.tar.gz
minetest-196562870552b156265feb83043da2bc21bd6246.tar.bz2
minetest-196562870552b156265feb83043da2bc21bd6246.zip
Fix vector.from_string returning a table without vector metatable
Diffstat (limited to 'builtin/common')
-rw-r--r--builtin/common/tests/vector_spec.lua1
-rw-r--r--builtin/common/vector.lua2
2 files changed, 2 insertions, 1 deletions
diff --git a/builtin/common/tests/vector_spec.lua b/builtin/common/tests/vector_spec.lua
index 2a50e2889..2f72f3383 100644
--- a/builtin/common/tests/vector_spec.lua
+++ b/builtin/common/tests/vector_spec.lua
@@ -300,6 +300,7 @@ describe("vector", function()
it("from_string()", function()
local v = vector.new(1, 2, 3.14)
+ assert.is_true(vector.check(vector.from_string("(1, 2, 3.14)")))
assert.same({v, 13}, {vector.from_string("(1, 2, 3.14)")})
assert.same({v, 12}, {vector.from_string("(1,2 ,3.14)")})
assert.same({v, 12}, {vector.from_string("(1,2,3.14,)")})
diff --git a/builtin/common/vector.lua b/builtin/common/vector.lua
index 02fc1bdee..581d014e0 100644
--- a/builtin/common/vector.lua
+++ b/builtin/common/vector.lua
@@ -61,7 +61,7 @@ function vector.from_string(s, init)
if not (x and y and z) then
return nil
end
- return {x = x, y = y, z = z}, np
+ return fast_new(x, y, z), np
end
function vector.to_string(v)