opengles emulator: Call XInitThreads on Linux.

All the X calls we do on linux are made from the FrameBuffer
object which is locked however OpenGL implementations may call
to Xlib during gl function calls. In order to be thread safe
we initialize Xlib to support multi-threading.

Change-Id: I3bc6a6378d7558fec44052bd67388beaf270c107
diff --git a/tools/emulator/opengl/host/renderer/main.cpp b/tools/emulator/opengl/host/renderer/main.cpp
index dba3190..332c9eb 100644
--- a/tools/emulator/opengl/host/renderer/main.cpp
+++ b/tools/emulator/opengl/host/renderer/main.cpp
@@ -26,6 +26,9 @@
 #include <winsock2.h>
 #endif
 
+#ifdef __linux__
+#include <X11/Xlib.h>
+#endif
 
 static void printUsage(const char *progName)
 {
@@ -105,6 +108,15 @@
             printf( "could not initialize Winsock\n" );
     }
 #endif
+
+#ifdef __linux__
+    // some OpenGL implementations may call X functions
+    // it is safer to synchronize all X calls made by all the
+    // rendering threads. (although the calls we do are locked
+    // in the FrameBuffer singleton object).
+    XInitThreads();
+#endif
+
     //
     // initialize Framebuffer
     //