diff options
author | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2016-10-19 22:15:01 +0200 |
---|---|---|
committer | Mike Gabriel <mike.gabriel@das-netzwerkteam.de> | 2016-10-19 22:15:01 +0200 |
commit | 70ac75f4ab184c21d11b9840a47362610aaef481 (patch) | |
tree | 183b9ec7e6897fb2cea7296b461a35ca93dfce6e /nx-X11/lib/X11/Macros.c | |
parent | 6c303d9e4ffd162b8c7f59a4b135e592d923a656 (diff) | |
parent | 70e9d346fe34af127d2c827c3678e53d0f4312ae (diff) | |
download | nx-libs-70ac75f4ab184c21d11b9840a47362610aaef481.tar.gz nx-libs-70ac75f4ab184c21d11b9840a47362610aaef481.tar.bz2 nx-libs-70ac75f4ab184c21d11b9840a47362610aaef481.zip |
Merge branch 'uli42-pr/libX11_further_backports' into 3.6.x
Attributes GH PR #222: https://github.com/ArcticaProject/nx-libs/pull/222
Diffstat (limited to 'nx-X11/lib/X11/Macros.c')
-rw-r--r-- | nx-X11/lib/X11/Macros.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/nx-X11/lib/X11/Macros.c b/nx-X11/lib/X11/Macros.c index cfc083a01..d5a3a0485 100644 --- a/nx-X11/lib/X11/Macros.c +++ b/nx-X11/lib/X11/Macros.c @@ -30,6 +30,9 @@ in this Software without prior written authorization from The Open Group. #include "Xlibint.h" #define XUTIL_DEFINE_FUNCTIONS #include "Xutil.h" +#if USE_XCB +#include "Xxcbint.h" +#endif /* * This file makes full definitions of routines for each macro. @@ -135,10 +138,28 @@ int XBitmapPad(Display *dpy) { return (BitmapPad(dpy)); } int XImageByteOrder(Display *dpy) { return (ImageByteOrder(dpy)); } +#if !USE_XCB unsigned long XNextRequest(Display *dpy) { return (NextRequest(dpy)); } +#else +/* XNextRequest() differs from the rest of the functions here because it is + * no longer a macro wrapper - when libX11 is being used mixed together + * with direct use of xcb, the next request field of the Display structure will + * not be updated. We can't fix the NextRequest() macro in any easy way, + * but we can at least make XNextRequest() do the right thing. + */ +unsigned long XNextRequest(Display *dpy) +{ + unsigned long next_request; + LockDisplay(dpy); + next_request = _XNextRequest(dpy); + UnlockDisplay(dpy); + + return next_request; +} +#endif unsigned long XLastKnownRequestProcessed(Display *dpy) { |