| diff --git a/.gitignore b/.gitignore |
| index d6c5c502b..d22bff565 100644 |
| --- a/.gitignore |
| +++ b/.gitignore |
| @@ -8,3 +8,4 @@ |
| !.editorconfig |
| !.travis.yml |
| !.github |
| +/build/ |
| \ No newline at end of file |
| diff --git a/framework/platform/lnx/X11/tcuLnxX11.cpp b/framework/platform/lnx/X11/tcuLnxX11.cpp |
| index dfe09d060..b4493e431 100644 |
| --- a/framework/platform/lnx/X11/tcuLnxX11.cpp |
| +++ b/framework/platform/lnx/X11/tcuLnxX11.cpp |
| @@ -24,6 +24,7 @@ |
| #include "tcuLnxX11.hpp" |
| #include "gluRenderConfig.hpp" |
| #include "deMemory.h" |
| +#include "deThread.hpp" |
| |
| #include <X11/Xutil.h> |
| |
| @@ -80,10 +81,14 @@ XlibDisplay::XlibDisplay (EventState& eventState, const char* name) |
| // a multi-threaded program calls, and it must complete before any other |
| // Xlib call is made. |
| DE_CHECK_RUNTIME_ERR(XInitThreads() != 0); |
| - m_display = XOpenDisplay((char*)name); // Won't modify argument string. |
| + for (int i = 0; i < 10; i++) { |
| + m_display = XOpenDisplay((char*)name); // Won't modify argument string. |
| + if (m_display) |
| + break; |
| + deSleep(100*(1<<i)); |
| + } |
| if (!m_display) |
| throw ResourceError("Failed to open display", name, __FILE__, __LINE__); |
| - |
| m_deleteAtom = XInternAtom(m_display, "WM_DELETE_WINDOW", False); |
| } |
| |