diff options
author | Paramat <paramat@users.noreply.github.com> | 2019-01-25 19:01:00 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-01-25 19:01:00 +0000 |
commit | 922e6ff57ec9f07d2ff04cf010821c1ddd00831e (patch) | |
tree | 00c0a10f8501d7b9d30c504bc1fa34ec62af35dd /src/script/common | |
parent | bc1e54764b736310ca3797dc3e06fe8326949367 (diff) | |
download | minetest-922e6ff57ec9f07d2ff04cf010821c1ddd00831e.tar.gz minetest-922e6ff57ec9f07d2ff04cf010821c1ddd00831e.tar.bz2 minetest-922e6ff57ec9f07d2ff04cf010821c1ddd00831e.zip |
blitToVManip: Check out-of-bounds using node position not index (#8127)
Previously, when using 'place on vmanip' to add a schematic to a
lua voxelmanip, if part of the schematic was outside the voxelmanip
volume, the outside part would often appear in a strange place
elsewhere inside the voxelmanip instead of being trimmed off.
This was due to the out-of-bounds check checking the index.
A position outside the voxelmanip can have an index that satisfies
'0 <= index <= voxelmanip volume', causing the node to be placed
at a strange position inside the voxelmanip.
Use 'vm->m_area.contains(pos)' instead.
Move index calculation to later in the code to optimise.
Diffstat (limited to 'src/script/common')
0 files changed, 0 insertions, 0 deletions