From f3bcaf9f88aad2c423ebcd61121562f9834187d4 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Mon, 8 Apr 2024 17:11:27 +0200 Subject: Merging upstream version 115.8.0esr. Signed-off-by: Daniel Baumann --- gfx/gl/GLContextProviderWGL.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'gfx/gl/GLContextProviderWGL.cpp') diff --git a/gfx/gl/GLContextProviderWGL.cpp b/gfx/gl/GLContextProviderWGL.cpp index 2720cab14e..5d90ee5169 100644 --- a/gfx/gl/GLContextProviderWGL.cpp +++ b/gfx/gl/GLContextProviderWGL.cpp @@ -158,12 +158,16 @@ bool WGLLibrary::EnsureInitialized() { const auto curCtx = mSymbols.fGetCurrentContext(); const auto curDC = mSymbols.fGetCurrentDC(); + GLContext::ResetTLSCurrentContext(); + if (!mSymbols.fMakeCurrent(mRootDc, mDummyGlrc)) { NS_WARNING("wglMakeCurrent failed"); return false; } - const auto resetContext = - MakeScopeExit([&]() { mSymbols.fMakeCurrent(curDC, curCtx); }); + const auto resetContext = MakeScopeExit([&]() { + GLContext::ResetTLSCurrentContext(); + mSymbols.fMakeCurrent(curDC, curCtx); + }); const auto loader = GetSymbolLoader(); @@ -297,6 +301,8 @@ GLContextWGL::~GLContextWGL() { } bool GLContextWGL::MakeCurrentImpl() const { + GLContext::ResetTLSCurrentContext(); + const bool succeeded = sWGLLib.mSymbols.fMakeCurrent(mDC, mContext); NS_ASSERTION(succeeded, "Failed to make GL context current!"); return succeeded; -- cgit v1.2.3