I have discovered an issue, where if an app using OpenGL is dragged to another display, I hit an assertion with:
***** GL_INVALID_FRAMEBUFFER_OPERATION at <path-to>/JUCE/modules/juce_opengl/opengl/juce_OpenGLGraphicsContext.cpp : 1375
JUCE Assertion failure in juce_opengl.cpp:216
This is both on current master and develop.
I am on macOS 10.14.1, 2013 15" MacBook Pro with NVIDIA GeForce GT 650M 1024 MB and Intel HD Graphics 4000 1536 MB
Thanks for reporting. I’ve pushed a workaround in 6dda52b which will avoid drawing if the frame buffer isn’t ready, I’ve tested this with the JUCE demos and it seems OK but I’d be interested to know if you see any graphical issues using this fix.
Similar issue here. vst crashes when being dragged from laptop screen to a secondary monitor. It crashes always at the exact spot (when it reaches some critical X coordinate), but if I open the vst on the secondary monitor and drag it to the smaller laptop screen, it doesn’t crash. Also, it doesn’t crash in the standalone version, just as vst.
I tried setting continuous repainting to false, not setting a renderer, not attaching the context to any component, and commenting out the entire renderOpenGL block. Nothing helps. Looks like the presence of OpenGLContext alone is enough to cause this crash when dragging, even if nothing is being rendered. Any tips, anyone?
On second thought I don’t think its OpenGL related. Tried to build a new project from scratch and it works fine. Probably some component which just happens to draw OpenGL is communicating with the host using a bad pointer or something, so its not really a graphic issue.