From 63a433f6c855684f2b3a25fdd7cbbfdacf1954e1 Mon Sep 17 00:00:00 2001 From: David Edmundson Date: Wed, 4 Apr 2018 18:31:55 +0100 Subject: [PATCH] Make nvidia resets opt-in based on QSurfaceFormat::ResetNotification We can't be sure every user will check the return value from makeCurrent and reset appropriately. Even though after a reset a user will be left with the same garbage as before, it's safer than a potential infinite loop. Change-Id: I5b328c654ad2a89c5b8c4399e2eb38150f4f384b Reviewed-by: Laszlo Agocs --- .../platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp index 6a663712b8..d37eb572a6 100644 --- a/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp +++ b/src/plugins/platforms/xcb/gl_integrations/xcb_glx/qglxintegration.cpp @@ -302,7 +302,7 @@ void QGLXContext::init(QXcbScreen *screen, QPlatformOpenGLContext *share) contextAttributes << GLX_CONTEXT_PROFILE_MASK_ARB << GLX_CONTEXT_ES2_PROFILE_BIT_EXT; } - if (supportsRobustness && supportsVideoMemoryPurge) { + if (supportsRobustness && supportsVideoMemoryPurge && m_format.testOption(QSurfaceFormat::ResetNotification)) { QVector contextAttributesWithNvidiaReset = contextAttributes; contextAttributesWithNvidiaReset << GLX_CONTEXT_RESET_NOTIFICATION_STRATEGY_ARB << GLX_LOSE_CONTEXT_ON_RESET_ARB;