From 2b22ae2d457a152db547df93ba8f915c24093b7b Mon Sep 17 00:00:00 2001
From: Travis Watkins <amaranth@ubuntu.com>
Date: Tue, 13 Nov 2012 23:23:21 -0600
Subject: [PATCH] Potentially fix glitch with falling entities.

When a block creates a falling entity the block is not immediately removed
from the world. Instead, the falling entity is responsible for removing it
but only if the block still exists. Due to certain piston mechanics it is
possible to move the block before this check happens and thus the block is
not removed. This should be fine as the entity will kill itself in this
situation. However, the code does not stop here and continues running the
rest of the entity logic which includes either placing a block in the world
or placing a block item in the world depending on the circumstances.
---
 src/main/java/net/minecraft/server/EntityFallingBlock.java | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/main/java/net/minecraft/server/EntityFallingBlock.java b/src/main/java/net/minecraft/server/EntityFallingBlock.java
index 7fe8ab57d2..dd8b64f43a 100644
--- a/src/main/java/net/minecraft/server/EntityFallingBlock.java
+++ b/src/main/java/net/minecraft/server/EntityFallingBlock.java
@@ -83,6 +83,7 @@ public class EntityFallingBlock extends Entity {
                         this.world.setTypeId(i, j, k, 0);
                     } else {
                         this.die();
+                        return; // CraftBukkit
                     }
                 }