Only allow non-zero value maxDistances for BlockIterators
Prevents them from iterating infinitely and hanging the server
This commit is contained in:
parent
3f68b7f930
commit
a406f34921
|
@ -0,0 +1,23 @@
|
|||
From 74c1e1dfd8eaaa86e68838b823ebd5177f007066 Mon Sep 17 00:00:00 2001
|
||||
From: Zach Brown <zach.brown@destroystokyo.com>
|
||||
Date: Tue, 12 Apr 2016 23:06:56 -0500
|
||||
Subject: [PATCH] Only allow non-zero maxDistance BlockIterators
|
||||
|
||||
They can iterate infinitely causing the server to hang.
|
||||
Fix your plugins!
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/util/BlockIterator.java b/src/main/java/org/bukkit/util/BlockIterator.java
|
||||
index 5c85778..0f34c66 100644
|
||||
--- a/src/main/java/org/bukkit/util/BlockIterator.java
|
||||
+++ b/src/main/java/org/bukkit/util/BlockIterator.java
|
||||
@@ -52,6 +52,7 @@ public class BlockIterator implements Iterator<Block> {
|
||||
*
|
||||
*/
|
||||
public BlockIterator(World world, Vector start, Vector direction, double yOffset, int maxDistance) {
|
||||
+ com.google.common.base.Preconditions.checkArgument(maxDistance != 0, "maxDistance cannot be 0!"); // Paper - Only allow non-zero maxDistance
|
||||
this.world = world;
|
||||
this.maxDistance = maxDistance;
|
||||
|
||||
--
|
||||
2.8.0
|
||||
|
Loading…
Reference in New Issue