mirror of
https://github.com/processing/processing4.git
synced 2026-02-22 14:55:41 +01:00
delete GL resources only when the Gl thread is current. Fixes #12
This commit is contained in:
@@ -667,7 +667,7 @@ public class PGL {
|
||||
|
||||
|
||||
protected void deleteSurface() {
|
||||
if (glColorTex != null) {
|
||||
if (threadIsCurrent() && fboLayerCreated) {
|
||||
deleteTextures(2, glColorTex);
|
||||
deleteFramebuffers(1, glColorFbo);
|
||||
deleteFramebuffers(1, glMultiFbo);
|
||||
@@ -676,10 +676,22 @@ public class PGL {
|
||||
deleteRenderbuffers(1, glDepth);
|
||||
deleteRenderbuffers(1, glStencil);
|
||||
}
|
||||
|
||||
if (canvasAWT != null) {
|
||||
canvasAWT.removeGLEventListener(listener);
|
||||
pg.parent.removeListeners(canvasAWT);
|
||||
pg.parent.remove(canvasAWT);
|
||||
} else if (canvasNEWT != null) {
|
||||
window.removeGLEventListener(listener);
|
||||
pg.parent.remove(canvasNEWT);
|
||||
}
|
||||
|
||||
fboLayerCreated = false;
|
||||
fboLayerInUse = false;
|
||||
firstFrame = false;
|
||||
|
||||
GLProfile.shutdown();
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user