diff --git a/src/native/linux/org_lwjgl_opengl_Window.cpp b/src/native/linux/org_lwjgl_opengl_Window.cpp index 5a2686fa..4dd86b42 100644 --- a/src/native/linux/org_lwjgl_opengl_Window.cpp +++ b/src/native/linux/org_lwjgl_opengl_Window.cpp @@ -403,7 +403,8 @@ static bool initWindowGLX13(JNIEnv *env, Display *disp, int screen, jstring titl throwException(env, "Could not create a GLX context"); return false; } - if (glXIsDirect(disp, context) == False) { + jboolean allow_software_acceleration = getBooleanProperty(env, "org.lwjgl.opengl.Window.allowSoftwareOpenGL"); + if (!allow_software_acceleration && (glXIsDirect(disp, context) == False)) { glXDestroyContext(disp, context); XFree(configs); throwException(env, "Could not create a direct GLX context");