--- a/net/minecraft/world/level/border/WorldBorder.java
+++ b/net/minecraft/world/level/border/WorldBorder.java
@@ -28,6 +28,7 @@
     int absoluteMaxSize = 29999984;
     private WorldBorder.a extent = new WorldBorder.d(5.9999968E7D);
     public static final WorldBorder.c DEFAULT_SETTINGS = new WorldBorder.c(0.0D, 0.0D, 0.2D, 5.0D, 5, 15, 5.9999968E7D, 0L, 0.0D);
+    public net.minecraft.server.level.WorldServer world; // CraftBukkit
 
     public WorldBorder() {}
 
@@ -149,6 +150,7 @@
     }
 
     public void a(IWorldBorderListener iworldborderlistener) {
+        if (listeners.contains(iworldborderlistener)) return; // CraftBukkit
         this.listeners.add(iworldborderlistener);
     }
 
