diff --git a/src/core/ozone/gl_surface_egl_qt.cpp b/src/core/ozone/gl_surface_egl_qt.cpp
index 0f21b8dfe50f29c81d2b35c6a4d39ae689af5531..e4dc738aaba0046e3ae764788a9dc6a56274441f 100644
--- a/src/core/ozone/gl_surface_egl_qt.cpp
+++ b/src/core/ozone/gl_surface_egl_qt.cpp
@@ -89,15 +89,6 @@ bool GLSurfaceEGLQt::InitializeOneOff()
         return false;
     }
 
-    s_initialized = true;
-    return true;
-}
-
-bool GLSurfaceEGLQt::InitializeExtensionSettingsOneOff()
-{
-    if (!s_initialized)
-        return false;
-
     g_extensions = eglQueryString(g_display, EGL_EXTENSIONS);
     g_egl_surfaceless_context_supported = ExtensionsContain(g_extensions, "EGL_KHR_surfaceless_context");
     if (g_egl_surfaceless_context_supported) {
@@ -116,10 +107,15 @@ bool GLSurfaceEGLQt::InitializeExtensionSettingsOneOff()
             context->ReleaseCurrent(surface.get());
         }
     }
-
+    s_initialized = true;
     return true;
 }
 
+bool GLSurfaceEGLQt::InitializeExtensionSettingsOneOff()
+{
+    return s_initialized;
+}
+
 bool GLSurfaceEGL::InitializeExtensionSettingsOneOff()
 {
     return GLSurfaceEGLQt::InitializeExtensionSettingsOneOff();