]> git.sesse.net Git - vlc/blobdiff - bin/override.c
winvlc: force plugin and data paths for vlc-static.exe
[vlc] / bin / override.c
index 2c94afe4f437242c4a4896deccddf8a82841b557..b216dfeda00106d40fea1bf4f5cfc627dad7d23a 100644 (file)
@@ -1,5 +1,5 @@
 /*****************************************************************************
- * override.c: overriden function calls for VLC media player
+ * override.c: overridden function calls for VLC media player
  *****************************************************************************
  * Copyright (C) 2010 RĂ©mi Denis-Courmont
  *
@@ -109,32 +109,12 @@ static void *getsym (const char *name)
         logbug(&counter, level, __func__, __VA_ARGS__); \
     } while (0)
 
-#ifdef __clang__
-
-#define CALL(func, ...) \
-({ typeof (func) *sym = getsym ( # func); sym (__VA_ARGS__); })
-
-#else
-
 /* Evil non-standard GNU C macro ;)
  *  typeof keyword,
- *  statement-expression,
- *  nested function...
+ *  statement-expression
  */
 #define CALL(func, ...) \
-({ \
-    static typeof (func) *sym = NULL; \
-    static pthread_once_t once = PTHREAD_ONCE_INIT; \
-    auto void getsym_once (void); \
-    void getsym_once (void) \
-    { \
-        sym = getsym ( # func); \
-    } \
-    pthread_once (&once, getsym_once); \
-    sym (__VA_ARGS__); \
-})
-
-#endif
+({ typeof (func) *sym = getsym ( # func); sym (__VA_ARGS__); })
 
 /*** Environment ***
  *