meta-emenlow: fix ptr->int and Werror=address compile errors

A couple of things that had previously been warnings are now errors,
so they need to be fixed up.

The first problem is the same problem encountered by xserver-kdrive,
and has the same fix, namely create a new version of REGION_INIT and
have all calls that pass in a pointer to a static struct use it
instead.  A different fix for this is upstream, which includes an API
change; we don't need all that to fix this problem.

The second problem is a cast from pointer to integer in fbdevhw.c.
This also is fixed upstream by removing the whole section of code
which is bogus anyway, which is also done here.

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
This commit is contained in:
Tom Zanussi 2012-01-10 22:19:30 -06:00
parent 38f2b670bc
commit 9016be4d80
3 changed files with 611 additions and 2 deletions

View File

@ -0,0 +1,92 @@
Upstream-Status: Inappropriate [already upstream]
It's broken for devices with BARs above 4G, and the sysfs method should
work everywhere anyway. As a pleasant side effect, this fixes some
warnings:
fbdevhw.c: In function 'fbdev_open_pci':
fbdevhw.c:333:4: warning: cast from pointer to integer of different size
fbdevhw.c:334:4: warning: cast from pointer to integer of different size
fbdevhw.c:336:4: warning: cast from pointer to integer of different size
fbdevhw.c:337:4: warning: cast from pointer to integer of different size
Signed-off-by: Adam Jackson <ajax (a] redhat.com>
Integrated-by: Tom Zanussi <tom.zanussi (a] intel.com>
Index: xorg-server-1.7.99.2/hw/xfree86/fbdevhw/fbdevhw.c
===================================================================
--- xorg-server-1.7.99.2.orig/hw/xfree86/fbdevhw/fbdevhw.c 2012-01-10 22:08:26.466693355 -0600
+++ xorg-server-1.7.99.2/hw/xfree86/fbdevhw/fbdevhw.c 2012-01-10 22:11:36.386936978 -0600
@@ -291,14 +291,7 @@
{
struct fb_fix_screeninfo fix;
char filename[256];
- int fd,i,j;
-
-
- /* There are two ways to that we can determine which fb device is
- * associated with this PCI device. The more modern way is to look in
- * the sysfs directory for the PCI device for a file named
- * "graphics/fb*"
- */
+ int fd, i;
for (i = 0; i < 8; i++) {
sprintf(filename,
@@ -331,55 +324,10 @@
}
}
-
- /* The other way is to examine the resources associated with each fb
- * device and see if there is a match with the PCI device. This technique
- * has some problems on certain mixed 64-bit / 32-bit architectures.
- * There is a flaw in the fb_fix_screeninfo structure in that it only
- * returns the low 32-bits of the address of the resources associated with
- * a device. However, on a mixed architecture the base addresses of PCI
- * devices, even for 32-bit applications, may be higher than 0x0f0000000.
- */
-
- for (i = 0; i < 8; i++) {
- sprintf(filename,"/dev/fb%d",i);
- if (-1 == (fd = open(filename,O_RDWR,0))) {
- xf86DrvMsg(-1, X_WARNING,
- "open %s: %s\n", filename, strerror(errno));
- continue;
- }
- if (-1 == ioctl(fd,FBIOGET_FSCREENINFO,(void*)&fix)) {
- close(fd);
- continue;
- }
- for (j = 0; j < 6; j++) {
- const pciaddr_t res_start = pPci->regions[j].base_addr;
- const pciaddr_t res_end = res_start + pPci->regions[j].size;
-
- if ((0 != fix.smem_len &&
- (pciaddr_t) fix.smem_start >= res_start &&
- (pciaddr_t) fix.smem_start < res_end) ||
- (0 != fix.mmio_len &&
- (pciaddr_t) fix.mmio_start >= res_start &&
- (pciaddr_t) fix.mmio_start < res_end))
- break;
- }
- if (j == 6) {
- close(fd);
- continue;
- }
- if (namep) {
- *namep = xnfalloc(16);
- strncpy(*namep,fix.id,16);
- }
- return fd;
- }
-
if (namep)
*namep = NULL;
- xf86DrvMsg(-1, X_ERROR,
- "Unable to find a valid framebuffer device\n");
+ xf86DrvMsg(-1, X_ERROR, "Unable to find a valid framebuffer device\n");
return -1;
}

View File

@ -0,0 +1,515 @@
Upstream-Status: Inappropriate [yocto-specific]
Signed-off-by: Tom Zanussi <tom.zanussi (a] intel.com>
Index: xorg-server-1.7.99.2/Xext/xace.c
===================================================================
--- xorg-server-1.7.99.2.orig/Xext/xace.c 2012-01-10 19:18:03.696703936 -0600
+++ xorg-server-1.7.99.2/Xext/xace.c 2012-01-10 19:18:17.196730688 -0600
@@ -255,7 +255,7 @@
imageBox.y1 = y;
imageBox.x2 = x + w;
imageBox.y2 = y + h;
- REGION_INIT(pScreen, &imageRegion, &imageBox, 1);
+ REGION_INIT2(pScreen, &imageRegion, &imageBox, 1);
REGION_NULL(pScreen, &censorRegion);
/* censorRegion = imageRegion - visibleRegion */
Index: xorg-server-1.7.99.2/dix/window.c
===================================================================
--- xorg-server-1.7.99.2.orig/dix/window.c 2012-01-10 17:55:40.997816709 -0600
+++ xorg-server-1.7.99.2/dix/window.c 2012-01-10 19:03:09.166733166 -0600
@@ -418,10 +418,10 @@
box.y1 = 0;
box.x2 = pScreen->width;
box.y2 = pScreen->height;
- REGION_INIT(pScreen, &pWin->clipList, &box, 1);
- REGION_INIT(pScreen, &pWin->winSize, &box, 1);
- REGION_INIT(pScreen, &pWin->borderSize, &box, 1);
- REGION_INIT(pScreen, &pWin->borderClip, &box, 1);
+ REGION_INIT2(pScreen, &pWin->clipList, &box, 1);
+ REGION_INIT2(pScreen, &pWin->winSize, &box, 1);
+ REGION_INIT2(pScreen, &pWin->borderSize, &box, 1);
+ REGION_INIT2(pScreen, &pWin->borderClip, &box, 1);
pWin->drawable.class = InputOutput;
pWin->optional->visual = pScreen->rootVisual;
Index: xorg-server-1.7.99.2/exa/exa.c
===================================================================
--- xorg-server-1.7.99.2.orig/exa/exa.c 2012-01-10 19:25:33.417588200 -0600
+++ xorg-server-1.7.99.2/exa/exa.c 2012-01-10 19:25:40.426941145 -0600
@@ -161,7 +161,7 @@
if (box.x1 >= box.x2 || box.y1 >= box.y2)
return;
- REGION_INIT(pScreen, &region, &box, 1);
+ REGION_INIT2(pScreen, &region, &box, 1);
DamageRegionAppend(&pPix->drawable, &region);
DamageRegionProcessPending(&pPix->drawable);
REGION_UNINIT(pScreen, &region);
Index: xorg-server-1.7.99.2/exa/exa_accel.c
===================================================================
--- xorg-server-1.7.99.2.orig/exa/exa_accel.c 2012-01-10 19:24:57.457521222 -0600
+++ xorg-server-1.7.99.2/exa/exa_accel.c 2012-01-10 19:26:21.976736053 -0600
@@ -1275,7 +1275,7 @@
Box.x2 = Box.x1 + w;
Box.y2 = Box.y1 + h;
- REGION_INIT(pScreen, &Reg, &Box, 1);
+ REGION_INIT2(pScreen, &Reg, &Box, 1);
pixmaps[0].as_dst = FALSE;
pixmaps[0].as_src = TRUE;
Index: xorg-server-1.7.99.2/exa/exa_classic.c
===================================================================
--- xorg-server-1.7.99.2.orig/exa/exa_classic.c 2012-01-10 19:24:48.047527363 -0600
+++ xorg-server-1.7.99.2/exa/exa_classic.c 2012-01-10 19:25:29.056935821 -0600
@@ -131,8 +131,8 @@
box.y1 = 0;
box.x2 = w;
box.y2 = h;
- REGION_INIT(pScreen, &pExaPixmap->validSys, &box, 0);
- REGION_INIT(pScreen, &pExaPixmap->validFB, &box, 0);
+ REGION_INIT2(pScreen, &pExaPixmap->validSys, &box, 0);
+ REGION_INIT2(pScreen, &pExaPixmap->validFB, &box, 0);
exaSetAccelBlock(pExaScr, pExaPixmap,
w, h, bpp);
Index: xorg-server-1.7.99.2/exa/exa_migration_classic.c
===================================================================
--- xorg-server-1.7.99.2.orig/exa/exa_migration_classic.c 2012-01-10 19:26:48.177818546 -0600
+++ xorg-server-1.7.99.2/exa/exa_migration_classic.c 2012-01-10 19:26:58.277521329 -0600
@@ -177,7 +177,7 @@
box.x2 = max(pValidExt->x2, pDamageExt->x2);
box.y2 = max(pValidExt->y2, pDamageExt->y2);
- REGION_INIT(pScreen, &closure, &box, 0);
+ REGION_INIT2(pScreen, &closure, &box, 0);
REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, &closure);
} else
REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, pending_damage);
Index: xorg-server-1.7.99.2/exa/exa_render.c
===================================================================
--- xorg-server-1.7.99.2.orig/exa/exa_render.c 2012-01-10 19:27:48.157788532 -0600
+++ xorg-server-1.7.99.2/exa/exa_render.c 2012-01-10 19:28:02.006706610 -0600
@@ -576,7 +576,7 @@
* (see use of DamagePendingRegion in exaCopyDirty)
*/
- REGION_INIT(pScreen, &region, &box, 1);
+ REGION_INIT2(pScreen, &region, &box, 1);
DamageRegionAppend(pDst->pDrawable, &region);
Index: xorg-server-1.7.99.2/exa/exa_unaccel.c
===================================================================
--- xorg-server-1.7.99.2.orig/exa/exa_unaccel.c 2012-01-10 19:27:53.367612350 -0600
+++ xorg-server-1.7.99.2/exa/exa_unaccel.c 2012-01-10 19:28:09.296923679 -0600
@@ -344,7 +344,7 @@
Box.x2 = Box.x1 + w;
Box.y2 = Box.y1 + h;
- REGION_INIT(pScreen, &Reg, &Box, 1);
+ REGION_INIT2(pScreen, &Reg, &Box, 1);
pExaScr->prepare_access_reg(pPix, EXA_PREPARE_SRC, &Reg);
} else
Index: xorg-server-1.7.99.2/fb/fboverlay.c
===================================================================
--- xorg-server-1.7.99.2.orig/fb/fboverlay.c 2012-01-10 19:11:34.557708404 -0600
+++ xorg-server-1.7.99.2/fb/fboverlay.c 2012-01-10 19:12:00.927730397 -0600
@@ -147,7 +147,7 @@
pbits))
return FALSE;
pScrPriv->layer[i].u.run.pixmap = pPixmap;
- REGION_INIT(pScreen, &pScrPriv->layer[i].u.run.region, &box, 0);
+ REGION_INIT2(pScreen, &pScrPriv->layer[i].u.run.region, &box, 0);
}
pScreen->devPrivate = pScrPriv->layer[0].u.run.pixmap;
return TRUE;
Index: xorg-server-1.7.99.2/glx/glxdri2.c
===================================================================
--- xorg-server-1.7.99.2.orig/glx/glxdri2.c 2012-01-10 19:22:49.027529676 -0600
+++ xorg-server-1.7.99.2/glx/glxdri2.c 2012-01-10 19:23:32.686731325 -0600
@@ -126,7 +126,7 @@
box.y1 = private->height - y - h;
box.x2 = x + w;
box.y2 = private->height - y;
- REGION_INIT(drawable->pDraw->pScreen, &region, &box, 0);
+ REGION_INIT2(drawable->pDraw->pScreen, &region, &box, 0);
DRI2CopyRegion(drawable->pDraw, &region,
DRI2BufferFrontLeft, DRI2BufferBackLeft);
@@ -154,7 +154,7 @@
box.y1 = 0;
box.x2 = private->width;
box.y2 = private->height;
- REGION_INIT(drawable->pDraw->pScreen, &region, &box, 0);
+ REGION_INIT2(drawable->pDraw->pScreen, &region, &box, 0);
DRI2CopyRegion(drawable->pDraw, &region,
DRI2BufferFakeFrontLeft, DRI2BufferFrontLeft);
@@ -171,7 +171,7 @@
box.y1 = 0;
box.x2 = private->width;
box.y2 = private->height;
- REGION_INIT(drawable->pDraw->pScreen, &region, &box, 0);
+ REGION_INIT2(drawable->pDraw->pScreen, &region, &box, 0);
DRI2CopyRegion(drawable->pDraw, &region,
DRI2BufferFrontLeft, DRI2BufferFakeFrontLeft);
Index: xorg-server-1.7.99.2/hw/xfree86/common/xf86Helper.c
===================================================================
--- xorg-server-1.7.99.2.orig/hw/xfree86/common/xf86Helper.c 2012-01-10 19:30:12.336705520 -0600
+++ xorg-server-1.7.99.2/hw/xfree86/common/xf86Helper.c 2012-01-10 19:32:03.116939624 -0600
@@ -1107,8 +1107,8 @@
box.y1 = 0;
box.x2 = pScreen->width;
box.y2 = pScreen->height;
- REGION_INIT (pScreen, &pWin->winSize, &box, 1);
- REGION_INIT (pScreen, &pWin->borderSize, &box, 1);
+ REGION_INIT2 (pScreen, &pWin->winSize, &box, 1);
+ REGION_INIT2 (pScreen, &pWin->borderSize, &box, 1);
if (WasViewable)
REGION_RESET(pScreen, &pWin->borderClip, &box);
pWin->drawable.width = pScreen->width;
Index: xorg-server-1.7.99.2/hw/xfree86/common/xf86fbman.c
===================================================================
--- xorg-server-1.7.99.2.orig/hw/xfree86/common/xf86fbman.c 2012-01-10 19:29:29.268021709 -0600
+++ xorg-server-1.7.99.2/hw/xfree86/common/xf86fbman.c 2012-01-10 19:31:36.426770740 -0600
@@ -536,7 +536,7 @@
(resize->box.x2 == OrigArea.x2))
return TRUE;
- REGION_INIT(pScreen, &FreedReg, &OrigArea, 1);
+ REGION_INIT2(pScreen, &FreedReg, &OrigArea, 1);
REGION_INIT(pScreen, &NewReg, &(resize->box), 1);
REGION_SUBTRACT(pScreen, &FreedReg, &FreedReg, &NewReg);
REGION_UNION(pScreen, offman->FreeBoxes, offman->FreeBoxes, &FreedReg);
@@ -551,7 +551,7 @@
/* otherwise we remove the old region */
- REGION_INIT(pScreen, &FreedReg, &OrigArea, 1);
+ REGION_INIT2(pScreen, &FreedReg, &OrigArea, 1);
REGION_UNION(pScreen, offman->FreeBoxes, offman->FreeBoxes, &FreedReg);
/* remove the old link */
@@ -1206,7 +1206,7 @@
if (FullBox->y2 < FullBox->y1) return FALSE;
if (FullBox->x2 < FullBox->x1) return FALSE;
- REGION_INIT(pScreen, &ScreenRegion, &ScreenBox, 1);
+ REGION_INIT2(pScreen, &ScreenRegion, &ScreenBox, 1);
REGION_INIT(pScreen, &FullRegion, FullBox, 1);
REGION_SUBTRACT(pScreen, &FullRegion, &FullRegion, &ScreenRegion);
Index: xorg-server-1.7.99.2/hw/xfree86/common/xf86xv.c
===================================================================
--- xorg-server-1.7.99.2.orig/hw/xfree86/common/xf86xv.c 2012-01-10 19:32:53.867575211 -0600
+++ xorg-server-1.7.99.2/hw/xfree86/common/xf86xv.c 2012-01-10 19:34:41.106734114 -0600
@@ -711,7 +711,7 @@
WinBox.y2 = WinBox.y1 + portPriv->drw_h;
/* clip to the window composite clip */
- REGION_INIT(pScreen, &WinRegion, &WinBox, 1);
+ REGION_INIT2(pScreen, &WinRegion, &WinBox, 1);
REGION_NULL(pScreen, &ClipRegion);
REGION_INTERSECT(pScreen, &ClipRegion, &WinRegion, portPriv->pCompositeClip);
@@ -776,7 +776,7 @@
WinBox.y2 = WinBox.y1 + portPriv->drw_h;
/* clip to the window composite clip */
- REGION_INIT(pScreen, &WinRegion, &WinBox, 1);
+ REGION_INIT2(pScreen, &WinRegion, &WinBox, 1);
REGION_NULL(pScreen, &ClipRegion);
REGION_INTERSECT(pScreen, &ClipRegion, &WinRegion, portPriv->pCompositeClip);
@@ -790,7 +790,7 @@
VPBox.x2 = portPriv->pScrn->frameX1 + 1;
VPBox.y2 = portPriv->pScrn->frameY1 + 1;
- REGION_INIT(pScreen, &VPReg, &VPBox, 1);
+ REGION_INIT2(pScreen, &VPReg, &VPBox, 1);
REGION_INTERSECT(pScreen, &ClipRegion, &ClipRegion, &VPReg);
REGION_UNINIT(pScreen, &VPReg);
}
@@ -866,7 +866,7 @@
WinBox.y2 = WinBox.y1 + portPriv->drw_h;
/* clip to the window composite clip */
- REGION_INIT(pScreen, &WinRegion, &WinBox, 1);
+ REGION_INIT2(pScreen, &WinRegion, &WinBox, 1);
REGION_NULL(pScreen, &ClipRegion);
REGION_INTERSECT(pScreen, &ClipRegion, &WinRegion, portPriv->pCompositeClip);
@@ -880,7 +880,7 @@
VPBox.x2 = portPriv->pScrn->frameX1 + 1;
VPBox.y2 = portPriv->pScrn->frameY1 + 1;
- REGION_INIT(pScreen, &VPReg, &VPBox, 1);
+ REGION_INIT2(pScreen, &VPReg, &VPBox, 1);
REGION_INTERSECT(pScreen, &ClipRegion, &ClipRegion, &VPReg);
REGION_UNINIT(pScreen, &VPReg);
}
@@ -1423,7 +1423,7 @@
WinBox.x2 = WinBox.x1 + drw_w;
WinBox.y2 = WinBox.y1 + drw_h;
- REGION_INIT(pScreen, &WinRegion, &WinBox, 1);
+ REGION_INIT2(pScreen, &WinRegion, &WinBox, 1);
REGION_NULL(pScreen, &ClipRegion);
REGION_INTERSECT(pScreen, &ClipRegion, &WinRegion, pGC->pCompositeClip);
@@ -1436,7 +1436,7 @@
VPBox.x2 = portPriv->pScrn->frameX1 + 1;
VPBox.y2 = portPriv->pScrn->frameY1 + 1;
- REGION_INIT(pScreen, &VPReg, &VPBox, 1);
+ REGION_INIT2(pScreen, &VPReg, &VPBox, 1);
REGION_INTERSECT(pScreen, &ClipRegion, &ClipRegion, &VPReg);
REGION_UNINIT(pScreen, &VPReg);
}
@@ -1575,7 +1575,7 @@
WinBox.x2 = WinBox.x1 + drw_w;
WinBox.y2 = WinBox.y1 + drw_h;
- REGION_INIT(pScreen, &WinRegion, &WinBox, 1);
+ REGION_INIT2(pScreen, &WinRegion, &WinBox, 1);
REGION_NULL(pScreen, &ClipRegion);
REGION_INTERSECT(pScreen, &ClipRegion, &WinRegion, pGC->pCompositeClip);
@@ -1723,7 +1723,7 @@
WinBox.x2 = WinBox.x1 + drw_w;
WinBox.y2 = WinBox.y1 + drw_h;
- REGION_INIT(pScreen, &WinRegion, &WinBox, 1);
+ REGION_INIT2(pScreen, &WinRegion, &WinBox, 1);
REGION_NULL(pScreen, &ClipRegion);
REGION_INTERSECT(pScreen, &ClipRegion, &WinRegion, pGC->pCompositeClip);
@@ -1736,7 +1736,7 @@
VPBox.x2 = portPriv->pScrn->frameX1 + 1;
VPBox.y2 = portPriv->pScrn->frameY1 + 1;
- REGION_INIT(pScreen, &VPReg, &VPBox, 1);
+ REGION_INIT2(pScreen, &VPReg, &VPBox, 1);
REGION_INTERSECT(pScreen, &ClipRegion, &ClipRegion, &VPReg);
REGION_UNINIT(pScreen, &VPReg);
}
Index: xorg-server-1.7.99.2/hw/xfree86/dri2/dri2.c
===================================================================
--- xorg-server-1.7.99.2.orig/hw/xfree86/dri2/dri2.c 2012-01-10 21:16:09.657521437 -0600
+++ xorg-server-1.7.99.2/hw/xfree86/dri2/dri2.c 2012-01-10 21:16:20.876960691 -0600
@@ -283,7 +283,7 @@
box.y1 = 0;
box.x2 = pPriv->width;
box.y2 = pPriv->height;
- REGION_INIT(pDraw->pScreen, &region, &box, 0);
+ REGION_INIT2(pDraw->pScreen, &region, &box, 0);
DRI2CopyRegion(pDraw, &region, DRI2BufferFakeFrontLeft,
DRI2BufferFrontLeft);
Index: xorg-server-1.7.99.2/hw/xfree86/modes/xf86Crtc.c
===================================================================
--- xorg-server-1.7.99.2.orig/hw/xfree86/modes/xf86Crtc.c 2012-01-10 20:06:07.747729534 -0600
+++ xorg-server-1.7.99.2/hw/xfree86/modes/xf86Crtc.c 2012-01-10 20:06:25.306735060 -0600
@@ -3123,7 +3123,7 @@
&crtc_box);
if (crtc) {
- REGION_INIT (pScreen, &crtc_region_local, &crtc_box, 1);
+ REGION_INIT2 (pScreen, &crtc_region_local, &crtc_box, 1);
crtc_region = &crtc_region_local;
REGION_INTERSECT (pScreen, crtc_region, crtc_region, reg);
}
Index: xorg-server-1.7.99.2/hw/xfree86/modes/xf86Rotate.c
===================================================================
--- xorg-server-1.7.99.2.orig/hw/xfree86/modes/xf86Rotate.c 2012-01-10 20:06:52.906706867 -0600
+++ xorg-server-1.7.99.2/hw/xfree86/modes/xf86Rotate.c 2012-01-10 20:07:09.076733051 -0600
@@ -167,7 +167,7 @@
if (damage_box.y1 < 0) damage_box.y1 = 0;
if (damage_box.x2 > pScreen->width) damage_box.x2 = pScreen->width;
if (damage_box.y2 > pScreen->height) damage_box.y2 = pScreen->height;
- REGION_INIT (pScreen, &damage_region, &damage_box, 1);
+ REGION_INIT2 (pScreen, &damage_region, &damage_box, 1);
DamageRegionAppend (&(*pScreen->GetScreenPixmap)(pScreen)->drawable,
&damage_region);
REGION_UNINIT (pScreen, &damage_region);
Index: xorg-server-1.7.99.2/hw/xfree86/xaa/xaaBitBlt.c
===================================================================
--- xorg-server-1.7.99.2.orig/hw/xfree86/xaa/xaaBitBlt.c 2012-01-10 20:04:11.086727146 -0600
+++ xorg-server-1.7.99.2/hw/xfree86/xaa/xaaBitBlt.c 2012-01-10 20:05:00.747564540 -0600
@@ -118,7 +118,7 @@
fastExpose = 0;
}
} else {
- REGION_INIT(pGC->pScreen, &rgnDst, &fastBox, 1);
+ REGION_INIT2(pGC->pScreen, &rgnDst, &fastBox, 1);
REGION_INTERSECT(pGC->pScreen, &rgnDst, &rgnDst, prgnSrcClip);
}
@@ -165,14 +165,14 @@
if (fastBox.x1 >= fastBox.x2 || fastBox.y1 >= fastBox.y2) {
REGION_NULL(pGC->pScreen, &rgnDst);
} else {
- REGION_INIT(pGC->pScreen, &rgnDst, &fastBox, 1);
+ REGION_INIT2(pGC->pScreen, &rgnDst, &fastBox, 1);
}
} else {
/* We must turn off fastClip now, since we must create
a full blown region. It is intersected with the
composite clip below. */
fastClip = 0;
- REGION_INIT(pGC->pScreen, &rgnDst, &fastBox,1);
+ REGION_INIT2(pGC->pScreen, &rgnDst, &fastBox,1);
}
} else {
REGION_TRANSLATE(pGC->pScreen, &rgnDst, -dx, -dy);
Index: xorg-server-1.7.99.2/include/regionstr.h
===================================================================
--- xorg-server-1.7.99.2.orig/include/regionstr.h 2012-01-10 19:02:29.548029362 -0600
+++ xorg-server-1.7.99.2/include/regionstr.h 2012-01-10 19:02:38.466732886 -0600
@@ -152,6 +152,11 @@
} \
}
+#define REGION_INIT2(_pScreen, _pReg, _rect, _size) \
+{ \
+ (_pReg)->extents = *(_rect); \
+ (_pReg)->data = (RegDataPtr)NULL; \
+}
#define REGION_UNINIT(_pScreen, _pReg) \
{ \
Index: xorg-server-1.7.99.2/mi/mibank.c
===================================================================
--- xorg-server-1.7.99.2.orig/mi/mibank.c 2012-01-10 19:13:24.187649642 -0600
+++ xorg-server-1.7.99.2/mi/mibank.c 2012-01-10 19:13:52.156941273 -0600
@@ -772,7 +772,7 @@
}
else
{
- REGION_INIT(pScreen, &rgnDst, &fastBox, 1);
+ REGION_INIT2(pScreen, &rgnDst, &fastBox, 1);
REGION_INTERSECT(pScreen, &rgnDst, &rgnDst, prgnSrcClip);
pBox = REGION_RECTS(&rgnDst);
nBox = REGION_NUM_RECTS(&rgnDst);
Index: xorg-server-1.7.99.2/mi/micopy.c
===================================================================
--- xorg-server-1.7.99.2.orig/mi/micopy.c 2012-01-10 19:12:55.427823858 -0600
+++ xorg-server-1.7.99.2/mi/micopy.c 2012-01-10 19:13:43.617564166 -0600
@@ -315,7 +315,7 @@
box.y1 = box_y1;
box.x2 = box_x2;
box.y2 = box_y2;
- REGION_INIT(pGC->pScreen, &rgnDst, &box, 1);
+ REGION_INIT2(pGC->pScreen, &rgnDst, &box, 1);
}
/* Clip against complex source if needed */
Index: xorg-server-1.7.99.2/mi/miexpose.c
===================================================================
--- xorg-server-1.7.99.2.orig/mi/miexpose.c 2012-01-10 19:14:32.367860019 -0600
+++ xorg-server-1.7.99.2/mi/miexpose.c 2012-01-10 19:15:04.996733972 -0600
@@ -206,7 +206,7 @@
box.x2 = pSrcDrawable->width;
box.y2 = pSrcDrawable->height;
prgnSrcClip = &rgnSrcRec;
- REGION_INIT(pscr, prgnSrcClip, &box, 1);
+ REGION_INIT2(pscr, prgnSrcClip, &box, 1);
pSrcWin = NULL;
}
@@ -239,11 +239,11 @@
box.x2 = pDstDrawable->width;
box.y2 = pDstDrawable->height;
prgnDstClip = &rgnDstRec;
- REGION_INIT(pscr, prgnDstClip, &box, 1);
+ REGION_INIT2(pscr, prgnDstClip, &box, 1);
}
/* drawable-relative source region */
- REGION_INIT(pscr, &rgnExposed, &srcBox, 1);
+ REGION_INIT2(pscr, &rgnExposed, &srcBox, 1);
/* now get the hidden parts of the source box*/
REGION_SUBTRACT(pscr, &rgnExposed, &rgnExposed, prgnSrcClip);
@@ -491,7 +491,7 @@
box = *REGION_EXTENTS( pWin->drawable.pScreen, exposures);
if (exposures == prgn) {
exposures = &expRec;
- REGION_INIT( pWin->drawable.pScreen, exposures, &box, 1);
+ REGION_INIT2( pWin->drawable.pScreen, exposures, &box, 1);
REGION_RESET( pWin->drawable.pScreen, prgn, &box);
} else {
REGION_RESET( pWin->drawable.pScreen, exposures, &box);
Index: xorg-server-1.7.99.2/mi/mioverlay.c
===================================================================
--- xorg-server-1.7.99.2.orig/mi/mioverlay.c 2012-01-10 19:16:09.686730991 -0600
+++ xorg-server-1.7.99.2/mi/mioverlay.c 2012-01-10 19:16:32.496733671 -0600
@@ -209,8 +209,8 @@
fullBox.y1 = 0;
fullBox.x2 = pScreen->width;
fullBox.y2 = pScreen->height;
- REGION_INIT(pScreen, &(pTree->borderClip), &fullBox, 1);
- REGION_INIT(pScreen, &(pTree->clipList), &fullBox, 1);
+ REGION_INIT2(pScreen, &(pTree->borderClip), &fullBox, 1);
+ REGION_INIT2(pScreen, &(pTree->clipList), &fullBox, 1);
}
} else xfree(pTree);
}
@@ -1027,7 +1027,7 @@
box = *REGION_EXTENTS(pScreen, exposures);
if (exposures == prgn) {
exposures = &expRec;
- REGION_INIT(pScreen, exposures, &box, 1);
+ REGION_INIT2(pScreen, exposures, &box, 1);
REGION_RESET(pScreen, prgn, &box);
} else {
REGION_RESET(pScreen, exposures, &box);
@@ -1672,7 +1672,7 @@
box.x1 = x1; box.x2 = x2;
box.y1 = y1; box.y2 = y2;
- REGION_INIT(pScreen, &reg, &box, 1);
+ REGION_INIT2(pScreen, &reg, &box, 1);
REGION_INTERSECT(pScreen, &reg, &reg, clipList);
if (generateExposures)
Index: xorg-server-1.7.99.2/mi/miwindow.c
===================================================================
--- xorg-server-1.7.99.2.orig/mi/miwindow.c 2012-01-10 19:17:07.617526248 -0600
+++ xorg-server-1.7.99.2/mi/miwindow.c 2012-01-10 19:17:17.267563248 -0600
@@ -111,7 +111,7 @@
box.y2 = y2;
pScreen = pWin->drawable.pScreen;
- REGION_INIT(pScreen, &reg, &box, 1);
+ REGION_INIT2(pScreen, &reg, &box, 1);
REGION_INTERSECT(pScreen, &reg, &reg, &pWin->clipList);
if (generateExposures)
Index: xorg-server-1.7.99.2/miext/damage/damage.c
===================================================================
--- xorg-server-1.7.99.2.orig/miext/damage/damage.c 2012-01-10 19:19:39.626736500 -0600
+++ xorg-server-1.7.99.2/miext/damage/damage.c 2012-01-10 19:21:06.396941292 -0600
@@ -324,7 +324,7 @@
box.y1 = draw_y;
box.x2 = draw_x + pDamage->pDrawable->width;
box.y2 = draw_y + pDamage->pDrawable->height;
- REGION_INIT(pScreen, &pixClip, &box, 1);
+ REGION_INIT2(pScreen, &pixClip, &box, 1);
REGION_INTERSECT (pScreen, pDamageRegion, pRegion, &pixClip);
REGION_UNINIT(pScreen, &pixClip);
}
@@ -2085,7 +2085,7 @@
box.y1 = pDrawable->y;
box.x2 = pDrawable->x + pDrawable->width;
box.y2 = pDrawable->y + pDrawable->height;
- REGION_INIT (pDrawable->pScreen, &pixmapClip, &box, 1);
+ REGION_INIT2 (pDrawable->pScreen, &pixmapClip, &box, 1);
pClip = &pixmapClip;
}
REGION_TRANSLATE (pDrawable->pScreen, &pDamage->damage, pDrawable->x, pDrawable->y);

View File

@ -1,4 +1,4 @@
PR = "r4"
PR = "r5"
PROTO_DEPS += "xf86driproto dri2proto"
@ -6,7 +6,9 @@ DEPENDS += "font-util"
SRC_URI += "file://nodolt.patch \
file://crosscompile.patch \
file://libdrm-poulsbo.patch"
file://libdrm-poulsbo.patch \
file://werror-address-fix.patch \
file://ptr-to-int-cast-fix.patch"
# Misc build failure for master HEAD
SRC_URI += "file://fix_open_max_preprocessor_error.patch"