Merge pull request #6579 from deathbeam/properly-destroy
Properly destroy JAWT window on plugin shutdown
This commit is contained in:
@@ -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;
|
||||
|
||||
Reference in New Issue
Block a user