From 5d3b8de87adee1fe42fce58fac0fc9213066865b Mon Sep 17 00:00:00 2001
From: Tahg <tahgtahv@gmail.com>
Date: Thu, 24 Feb 2011 03:51:00 -0500
Subject: [PATCH] Fixed some debug

---
 .../minecraft/server/ChunkProviderServer.java | 11 +++++++++-
 .../net/minecraft/server/LongHashtable.java   | 21 ++++++++++++++++++-
 src/main/java/net/minecraft/server/World.java |  6 ------
 3 files changed, 30 insertions(+), 8 deletions(-)

diff --git a/src/main/java/net/minecraft/server/ChunkProviderServer.java b/src/main/java/net/minecraft/server/ChunkProviderServer.java
index ae85702ef3..4ff1ffa662 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderServer.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderServer.java
@@ -106,7 +106,16 @@ public class ChunkProviderServer implements IChunkProvider {
     public Chunk b(int i, int j) {
         Chunk chunk = (Chunk) this.e.get(i, j); // CraftBukkit
 
-        return chunk == null ? (this.g.r ? this.d(i, j) : this.b) : chunk;
+        chunk = chunk == null ? (this.g.r ? this.d(i, j) : this.b) : chunk;
+        if(chunk == this.b) return chunk;
+        if(i != chunk.j || j != chunk.k) {
+            MinecraftServer.a.info("Chunk (" + chunk.j + ", " + chunk.k +") stored at  (" + i + ", " + j + ")");
+            MinecraftServer.a.info(chunk.getClass().getName());
+            Throwable x = new Throwable();
+            x.fillInStackTrace();
+            x.printStackTrace();
+        }
+        return chunk;
     }
 
     public Chunk e(int i, int j) { // CraftBukkit - private->public
diff --git a/src/main/java/net/minecraft/server/LongHashtable.java b/src/main/java/net/minecraft/server/LongHashtable.java
index d3b1474c18..b9dc00e1d3 100644
--- a/src/main/java/net/minecraft/server/LongHashtable.java
+++ b/src/main/java/net/minecraft/server/LongHashtable.java
@@ -10,10 +10,29 @@ public class LongHashtable<V> extends LongHash
 
     public void put(int msw, int lsw, V value) {
         put(toLong(msw, lsw), value);
+        if(value instanceof Chunk) {
+            Chunk c = (Chunk)value;
+            if(msw != c.j || lsw != c.k) {
+                MinecraftServer.a.info("Chunk (" + c.j + ", " + c.k +") stored at  (" + msw + ", " + lsw + ")");
+                Throwable x = new Throwable();
+                x.fillInStackTrace();
+                x.printStackTrace();
+            }
+        }
     }
 
     public V get(int msw, int lsw) {
-        return get(toLong(msw, lsw));
+        V value = get(toLong(msw, lsw));
+        if(value instanceof Chunk) {
+            Chunk c = (Chunk)value;
+            if(msw != c.j || lsw != c.k) {
+                MinecraftServer.a.info("Chunk (" + c.j + ", " + c.k +") stored at  (" + msw + ", " + lsw + ")");
+                Throwable x = new Throwable();
+                x.fillInStackTrace();
+                x.printStackTrace();
+            }
+        }
+        return value;
     }
 
     public void put(long key, V value) {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 50c07c1a6a..c990a9d64d 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -203,12 +203,6 @@ public class World implements IBlockAccess {
             }
             result = lastChunkAccessed;
         }
-        if(result.j != i || result.k != j) {
-            if(this instanceof WorldServer) {
-                WorldServer ws = (WorldServer) this;
-                MinecraftServer.a.severe("Chunk fetched was not the chunk requested.");
-            }
-        }
         return result;
     }
     // CraftBukkit end