You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
40 lines
1.5 KiB
40 lines
1.5 KiB
3 years ago
|
From 17db7d75643b4f3dccd5b36a6ab175f03ba74297 Mon Sep 17 00:00:00 2001
|
||
|
From: Aleix Pol <aleixpol@kde.org>
|
||
|
Date: Wed, 2 Feb 2022 20:36:40 +0100
|
||
|
Subject: [PATCH 77/77] opengl source: Do not crash if we could not make our
|
||
|
context current
|
||
|
|
||
|
BUG: 449505
|
||
|
---
|
||
|
src/provider/core/openglinfosource.cpp | 7 ++++++-
|
||
|
1 file changed, 6 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/src/provider/core/openglinfosource.cpp b/src/provider/core/openglinfosource.cpp
|
||
|
index 5117d85..08402c7 100644
|
||
|
--- a/src/provider/core/openglinfosource.cpp
|
||
|
+++ b/src/provider/core/openglinfosource.cpp
|
||
|
@@ -13,6 +13,7 @@
|
||
|
#include <QOpenGLFunctions>
|
||
|
#include <QSurfaceFormat>
|
||
|
#include <QWindow>
|
||
|
+#include "logging_p.h"
|
||
|
#endif
|
||
|
|
||
|
using namespace KUserFeedback;
|
||
|
@@ -37,7 +38,11 @@ QVariant OpenGLInfoSource::data()
|
||
|
QWindow window;
|
||
|
window.setSurfaceType(QSurface::OpenGLSurface);
|
||
|
window.create();
|
||
|
- context.makeCurrent(&window);
|
||
|
+ if (!context.makeCurrent(&window)) {
|
||
|
+ qCWarning(Log) << "Could not make OpenGL context current";
|
||
|
+ m.insert(QStringLiteral("type"), QStringLiteral("none"));
|
||
|
+ return m;
|
||
|
+ }
|
||
|
QOpenGLFunctions functions(&context);
|
||
|
m.insert(QStringLiteral("vendor"), OpenGLInfoSourcePrivate::normalizeVendor(reinterpret_cast<const char*>(functions.glGetString(GL_VENDOR))));
|
||
|
m.insert(QStringLiteral("renderer"), OpenGLInfoSourcePrivate::normalizeRenderer(reinterpret_cast<const char*>(functions.glGetString(GL_RENDERER))));
|
||
|
--
|
||
|
2.34.1
|
||
|
|