2013-04-03 15:20:29 +08:00
|
|
|
From 90775f48e28029d31d9760dce09695840d25ea85 Mon Sep 17 00:00:00 2001
|
2013-02-03 06:21:35 +08:00
|
|
|
From: md_5 <md_5@live.com.au>
|
|
|
|
Date: Sun, 3 Feb 2013 09:20:19 +1100
|
|
|
|
Subject: [PATCH] Detect, remove and warn about null tile entities.
|
|
|
|
|
|
|
|
---
|
2013-04-03 15:20:29 +08:00
|
|
|
src/main/java/net/minecraft/server/World.java | 7 +++++++
|
|
|
|
1 files changed, 7 insertions(+), 0 deletions(-)
|
2013-02-03 06:21:35 +08:00
|
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
|
2013-03-25 15:57:00 +08:00
|
|
|
index 0afe88d..c390e65 100644
|
2013-02-03 06:21:35 +08:00
|
|
|
--- a/src/main/java/net/minecraft/server/World.java
|
|
|
|
+++ b/src/main/java/net/minecraft/server/World.java
|
2013-03-23 15:27:02 +08:00
|
|
|
@@ -1334,6 +1334,13 @@ public abstract class World implements IBlockAccess {
|
2013-02-03 06:21:35 +08:00
|
|
|
|
|
|
|
while (iterator.hasNext()) {
|
|
|
|
TileEntity tileentity = (TileEntity) iterator.next();
|
|
|
|
+ // Spigot start
|
|
|
|
+ if (tileentity == null) {
|
|
|
|
+ getServer().getLogger().severe("Spigot has detected a null entity and has removed it, preventing a crash");
|
|
|
|
+ iterator.remove();
|
|
|
|
+ continue;
|
|
|
|
+ }
|
|
|
|
+ // Spigot end
|
2013-03-25 15:57:00 +08:00
|
|
|
// CraftBukkit start - Don't tick entities in chunks queued for unload
|
2013-02-03 06:21:35 +08:00
|
|
|
ChunkProviderServer chunkProviderServer = ((WorldServer) this).chunkProviderServer;
|
|
|
|
if (chunkProviderServer.unloadQueue.contains(tileentity.x >> 4, tileentity.z >> 4)) {
|
|
|
|
--
|
2013-04-03 15:20:29 +08:00
|
|
|
1.7.0.4
|
2013-02-03 06:21:35 +08:00
|
|
|
|