Update upstream for memory leak patch

This commit is contained in:
Aikar 2016-03-31 21:43:21 -04:00
parent dea2d41b86
commit 578af64827
3 changed files with 2 additions and 30 deletions

@ -1 +1 @@
Subproject commit 6247aa00cc50cff563dc17811db1c3f4a9f1487c
Subproject commit f92e01ba5cf46c123d0cd38b29321c78706257e0

View File

@ -1,4 +1,4 @@
From ea50a2f4bccc3f86ce363e53f345acc3b434b8bb Mon Sep 17 00:00:00 2001
From 26605472c71f3844ee15539ee80f49d6234ce140 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 31 Mar 2016 19:17:58 -0400
Subject: [PATCH] Do not load chunks for light checks

View File

@ -1,28 +0,0 @@
From a4e295c985a50926d5e66a184fc764f4aa301d6a Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Thu, 31 Mar 2016 19:06:47 -0400
Subject: [PATCH] Fix Massive Memory Leak
Pathfinder objects are storing references to ChunkCache's, and never cleaning up.
These ChunkCache's then leak other entity objects. Those entity objects then have leaks to their
own chunk cache. A recursive problem....
Clean up the ChunkCache reference after it is done being used.
diff --git a/src/main/java/net/minecraft/server/PathfinderAbstract.java b/src/main/java/net/minecraft/server/PathfinderAbstract.java
index d579577..40e5b4d 100644
--- a/src/main/java/net/minecraft/server/PathfinderAbstract.java
+++ b/src/main/java/net/minecraft/server/PathfinderAbstract.java
@@ -23,7 +23,7 @@ public abstract class PathfinderAbstract {
this.f = MathHelper.d(entityinsentient.width + 1.0F);
}
- public void a() {}
+ public void a() {this.a = (IBlockAccess) null;} // Paper - Fix massive memory leak. Intentionally casting to ensure compile error if obfuscation changes
protected PathPoint a(int i, int j, int k) {
int l = PathPoint.b(i, j, k);
--
2.8.0