]> git.sesse.net Git - vlc/blobdiff - bin/vlc.c
Call XInitThreads early enough
[vlc] / bin / vlc.c
index 3a15722d77e4f8094a75c27784026f8e1c368721..5220618e07bfc4da03250d52e1f152218a1c7296 100644 (file)
--- a/bin/vlc.c
+++ b/bin/vlc.c
@@ -33,7 +33,9 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <locale.h>
-
+#ifdef HAVE_X11_XLIB_H
+# include <X11/Xlib.h>
+#endif
 
 /* Explicit HACK */
 extern void LocaleFree (const char *);
@@ -82,6 +84,15 @@ int main( int i_argc, const char *ppsz_argv[] )
 #   endif
 #endif
 
+#ifdef HAVE_X11_XLIB_H
+    /* Initialize Xlib thread support. */
+    if (!XInitThreads ())
+    {
+        fputs ("VLC requires a thread-safe Xlib. Sorry.\n", stderr);
+        return 1;
+    }
+#endif
+
     /* Synchronously intercepted POSIX signals.
      *
      * In a threaded program such as VLC, the only sane way to handle signals