vmware: Fix compilation on newer X servers
authorJakob Bornecrantz <jakob@vmware.com>
Fri, 21 Feb 2014 17:10:07 +0000 (18:10 +0100)
committerJakob Bornecrantz <jakob@vmware.com>
Wed, 26 Feb 2014 18:02:45 +0000 (19:02 +0100)
Found by Bryan Lee. Later versions of X.org turns dispMode pointers
into const upsetting gcc, turn them into size_t's instead.

Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
src/vmwaremodes.c

index 2965dca..41a9b4f 100644 (file)
@@ -102,7 +102,9 @@ vmwareAddDefaultMode(ScrnInfoPtr pScrn, uint32 dwidth, uint32 dheight)
            dispModeList = pScrn->display->modes;
            while(*dispModeList)
                dispModeList++;
-           dispModeCount = dispModeList - pScrn->display->modes;
+           dispModeCount = (unsigned)(((size_t)dispModeList -
+                                       (size_t)pScrn->display->modes) /
+                                      sizeof(*dispModeList));
        }
 
        dispModeList = xnfcalloc(dispModeCount + 2, sizeof(*dispModeList));