diff options
Diffstat (limited to 'src/glx/x11/XF86dri.c')
-rw-r--r-- | src/glx/x11/XF86dri.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/glx/x11/XF86dri.c b/src/glx/x11/XF86dri.c index 03fa4e57bc..3f989fa986 100644 --- a/src/glx/x11/XF86dri.c +++ b/src/glx/x11/XF86dri.c @@ -200,9 +200,10 @@ PUBLIC Bool XF86DRIOpenConnection(dpy, screen, hSAREA, busIdString) } *hSAREA = rep.hSAREALow; -#ifdef LONG64 - *hSAREA |= ((drm_handle_t)rep.hSAREAHigh) << 32; -#endif + if (sizeof(drm_handle_t) == 8) { + const int shift = 32; /* var to prevent warning on next line */ + *hSAREA |= ((drm_handle_t) rep.hSAREAHigh) << shift; + } if (rep.length) { if (!(*busIdString = (char *)Xcalloc(rep.busIdStringLength + 1, 1))) { @@ -562,9 +563,10 @@ PUBLIC Bool XF86DRIGetDeviceInfo(dpy, screen, hFrameBuffer, } *hFrameBuffer = rep.hFrameBufferLow; -#ifdef LONG64 - *hFrameBuffer |= ((drm_handle_t)rep.hFrameBufferHigh) << 32; -#endif + if (sizeof(drm_handle_t) == 8) { + const int shift = 32; /* var to prevent warning on next line */ + *hFrameBuffer |= ((drm_handle_t) rep.hFrameBufferHigh) << shift; + } *fbOrigin = rep.framebufferOrigin; *fbSize = rep.framebufferSize; |