-#ifdef _GNU_SOURCE
- /* load the function pointer with RTLD_NEXT
- * this might be the real X function or another
- * preloaded intercept
- */
- if (!lib_xlib)
- lib_xlib = RTLD_NEXT;
-#else
- /* find the real Xlib and the real X function */
- if (!lib_xlib)
- lib_xlib = dlopen("libX11.so", RTLD_GLOBAL | RTLD_LAZY);
-#endif
- if (lib_xlib && !xia)
- xia = (XIA *) dlsym(lib_xlib, "XInternAtom");
- if (lib_xlib && !xcp)
- xcp = (XCP *) dlsym(lib_xlib, "XChangeProperty");
- if (!xia || !xcp) {
+ if (lib_xlib == NULL)
+ lib_xlib = DLOPEN("libX11.so");
+ if (lib_xlib) {
+ if (xia == NULL)
+ xia = (XIA *) dlsym(lib_xlib, "XInternAtom");
+ if (xcp == NULL)
+ xcp = (XCP *) dlsym(lib_xlib, "XChangeProperty");
+ }
+ if (xia == NULL || xcp == NULL) {