windows: gl: Print GetLastError() when makeCurrent fails
This matches the behavior of other implementations, such as QEGLPlatformContext: doing a qWarning with the relevant error from eglGetError() or equivalent is helpful when something goes wrong and should be common among QOpenGLPlatformContext implementations. Task-number: QTBUG-85714 Change-Id: Ifa5d22b83808c92ae92efcbcddc8d8c3d3ba34b1 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 03650696a1fb727a337865d43f068ddc7723a893) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
03cb3405ae
commit
e99a9ff495
@ -1301,7 +1301,10 @@ bool QWindowsGLContext::makeCurrent(QPlatformSurface *surface)
|
||||
&& QOpenGLStaticContext::opengl32.wglGetCurrentDC() == contextData->hdc) {
|
||||
return true;
|
||||
}
|
||||
return QOpenGLStaticContext::opengl32.wglMakeCurrent(contextData->hdc, contextData->renderingContext);
|
||||
const bool success = QOpenGLStaticContext::opengl32.wglMakeCurrent(contextData->hdc, contextData->renderingContext);
|
||||
if (!success)
|
||||
qErrnoWarning("%s: wglMakeCurrent() failed for existing context data", __FUNCTION__);
|
||||
return success;
|
||||
}
|
||||
// Create a new entry.
|
||||
const QOpenGLContextData newContext(m_renderingContext, hwnd, GetDC(hwnd));
|
||||
@ -1329,6 +1332,8 @@ bool QWindowsGLContext::makeCurrent(QPlatformSurface *surface)
|
||||
qCDebug(lcQpaGl) << "makeCurrent(): context loss detected" << this;
|
||||
// Drop the surface. Will recreate on the next makeCurrent.
|
||||
window->invalidateSurface();
|
||||
} else {
|
||||
qErrnoWarning("%s: wglMakeCurrent() failed", __FUNCTION__);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user