diff --git a/qgcresources.qrc b/qgcresources.qrc index 66cea287df2c204088100b638f38a0b17b097140..5760508c963e66bd6ab159603a0c637366439d54 100644 --- a/qgcresources.qrc +++ b/qgcresources.qrc @@ -236,4 +236,7 @@ src/FirmwarePlugin/APM/apm.pdef.xml + + resources/opengl/buglist.json + diff --git a/resources/opengl/buglist.json b/resources/opengl/buglist.json new file mode 100644 index 0000000000000000000000000000000000000000..5d7ed7a4a9b86b2705007b80ff228961c59dbce8 --- /dev/null +++ b/resources/opengl/buglist.json @@ -0,0 +1,48 @@ +{ + "name": "QGroundControl OpenGL Driver Blacklist", + "version": "5.5", + "entries": [ + { + "id": 1, + "description": "Desktop OpenGL is unreliable on some Intel HD laptops (QTBUG-43263, QTBUG-42240)", + "vendor_id": "0x8086", + "device_id": [ "0x0A16" ], + "os": { + "type": "win" + }, + "driver_version": { + "op": "<=", + "value": "10.18.10.3277" + }, + "features": [ + "disable_desktopgl" + ] + }, + { + "id": 2, + "description": "Desktop OpenGL is unreliable on some Intel Mobile GMA Devices", + "vendor_id": "0x8086", + "device_id": [ "0x2972", "0x2973", + "0x2992", "0x2993", + "0x29A2", "0x29A3", + "0x2982", "0x2983", + "0x2A02", "0x2A03", "0x2A12", "0x2A13", + "0x2E42", "0x2E43", "0x2E92", "0x2E93", + "0x2E12", "0x2E13", + "0x2E32", "0x2E33", + "0x2E22", "0x2E23", + "0x2A42", "0x2A43" + ], + "os": { + "type": "win" + }, + "driver_version": { + "op": "<=", + "value": "8.15.10.2702" + }, + "features": [ + "disable_desktopgl" + ] + } + ] +} diff --git a/src/main.cc b/src/main.cc index 91c48eb1fdf90b2ba899fbd94ff0bf6991e727e8..d77139a127c76d2516c8eff80c941b18023d7634 100644 --- a/src/main.cc +++ b/src/main.cc @@ -203,6 +203,9 @@ int main(int argc, char *argv[]) // hanging. DWORD dwMode = SetErrorMode(SEM_NOGPFAULTERRORBOX); SetErrorMode(dwMode | SEM_NOGPFAULTERRORBOX); + + // Set our own OpenGL buglist + qputenv("QT_OPENGL_BUGLIST", ":/opengl/resources/opengl/buglist.json"); } #endif #endif // QT_DEBUG