mirror of
https://github.com/PaperMC/Paper.git
synced 2024-11-29 22:13:42 +01:00
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
Block a user