--- a/net/minecraft/world/entity/animal/HappyGhast.java
+++ b/net/minecraft/world/entity/animal/HappyGhast.java
@@ -302,8 +_,12 @@
     }
 
     @Override
-    protected void removePassenger(Entity passenger) {
-        super.removePassenger(passenger);
+    // Paper start - cancellable passengers
+    protected boolean removePassenger(Entity passenger, boolean suppressCancellation) {
+        if (!super.removePassenger(passenger, suppressCancellation)) {
+            return false;
+        }
+    // Paper end - cancellable passengers
         if (!this.level().isClientSide) {
             this.setServerStillTimeout(10);
         }
@@ -312,6 +_,7 @@
             this.clearHome();
             this.level().playSound(null, this.getX(), this.getY(), this.getZ(), SoundEvents.HARNESS_GOGGLES_UP, this.getSoundSource(), 1.0F, 1.0F);
         }
+        return true; // Paper - cancellable passengers
     }
 
     @Override
