Skip to content

Commit c8c6484

Browse files
authored
Fix offset mask mutating vector (#3135)
1 parent 46dc455 commit c8c6484

File tree

1 file changed

+5
-0
lines changed
  • worldedit-core/src/main/java/com/sk89q/worldedit/function/mask

1 file changed

+5
-0
lines changed

worldedit-core/src/main/java/com/sk89q/worldedit/function/mask/OffsetMask.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919

2020
package com.sk89q.worldedit.function.mask;
2121

22+
import com.fastasyncworldedit.core.math.MutableBlockVector3;
2223
import com.sk89q.worldedit.WorldEdit;
2324
import com.sk89q.worldedit.extension.platform.Capability;
2425
import com.sk89q.worldedit.math.BlockVector3;
@@ -115,6 +116,10 @@ public void setOffset(BlockVector3 offset) {
115116
@Override
116117
public boolean test(BlockVector3 vector) {
117118
//FAWE start - ignore resultant position outside world height range
119+
if (vector instanceof MutableBlockVector3) {
120+
// make sure we don't modify a vector passed from the outside
121+
vector = vector.toImmutable();
122+
}
118123
BlockVector3 testPos = vector.add(offset);
119124
if (testPos.y() < minY || testPos.y() > maxY) {
120125
return false;

0 commit comments

Comments
 (0)