Merge pull request #6579 from deathbeam/properly-destroy

Properly destroy JAWT window on plugin shutdown
This commit is contained in:
Adam
2018-11-19 20:49:06 -05:00
committed by GitHub

View File

@@ -26,7 +26,6 @@ package net.runelite.client.plugins.gpu;
import com.google.common.eventbus.Subscribe;
import com.google.inject.Provides;
import com.jogamp.nativewindow.NativeSurface;
import com.jogamp.nativewindow.awt.AWTGraphicsConfiguration;
import com.jogamp.nativewindow.awt.JAWTWindow;
import com.jogamp.opengl.GL;
@@ -330,11 +329,6 @@ public class GpuPlugin extends Plugin implements DrawCallbacks
client.setGpu(false);
client.setDrawCallbacks(null);
if (jawtWindow.getLock().getHoldCount() != NativeSurface.LOCK_SURFACE_NOT_READY)
{
jawtWindow.lockSurface();
}
if (bufferId != -1)
{
GLUtil.glDeleteBuffer(gl, bufferId);
@@ -357,7 +351,13 @@ public class GpuPlugin extends Plugin implements DrawCallbacks
shutdownProgram();
shutdownVao();
if (!jawtWindow.getLock().isLocked())
{
jawtWindow.lockSurface();
}
glContext.destroy();
NewtFactoryAWT.destroyNativeWindow(jawtWindow);
jawtWindow = null;
gl = null;