xserver: Branch 'glucose-2' - 2 commits
Jose Fonseca
jrfonseca at kemper.freedesktop.org
Mon Sep 17 11:16:45 PDT 2007
fb/fb.h | 4 ++--
fb/fbpict.c | 2 +-
hw/xgl/xglpixmap.c | 2 +-
render/picture.c | 4 +++-
4 files changed, 7 insertions(+), 5 deletions(-)
New commits:
diff-tree 41a5aee3859d4d7e648132ed0c4f204084d7c4f0 (from b16472ce94b954efdc0d9acadd3bb9b521c9c6fd)
Author: José Fonseca <jrfonseca at tungstengraphics.com>
Date: Mon Sep 17 19:11:03 2007 +0100
Prevent promotion to unsigned when calculating strides.
diff --git a/fb/fb.h b/fb/fb.h
index a924f49..01c05d7 100644
--- a/fb/fb.h
+++ b/fb/fb.h
@@ -715,7 +715,7 @@ typedef struct {
} \
fbPrepareAccess(pDrawable); \
(pointer) = (FbBits *) _pPix->devPrivate.ptr; \
- (stride) = ((int) _pPix->devKind) / sizeof (FbBits); (void)(stride); \
+ (stride) = _pPix->devKind / (int) sizeof (FbBits); (void)(stride); \
(bpp) = _pPix->drawable.bitsPerPixel; (void)(bpp); \
}
@@ -732,7 +732,7 @@ typedef struct {
} \
fbPrepareAccess(pDrawable); \
(pointer) = (FbStip *) _pPix->devPrivate.ptr; \
- (stride) = ((int) _pPix->devKind) / sizeof (FbStip); (void)(stride); \
+ (stride) = _pPix->devKind / (int) sizeof (FbStip); (void)(stride); \
(bpp) = _pPix->drawable.bitsPerPixel; (void)(bpp); \
}
diff --git a/fb/fbpict.c b/fb/fbpict.c
index 85b5171..9b360bb 100644
--- a/fb/fbpict.c
+++ b/fb/fbpict.c
@@ -297,7 +297,7 @@ create_bits_picture (PicturePtr pict,
image = pixman_image_create_bits (
pict->format,
pict->pDrawable->width, pict->pDrawable->height,
- (uint32_t *)bits, stride * sizeof (FbStride));
+ (uint32_t *)bits, stride * (int) sizeof (FbStride));
#ifdef FB_ACCESS_WRAPPER
diff --git a/hw/xgl/xglpixmap.c b/hw/xgl/xglpixmap.c
index 69ef9c9..56c7ecd 100644
--- a/hw/xgl/xglpixmap.c
+++ b/hw/xgl/xglpixmap.c
@@ -600,7 +600,7 @@ xglAllocatePixmapBits (PixmapPtr pPixmap
height = pPixmap->drawable.height;
bpp = pPixmap->drawable.bitsPerPixel;
- stride = ((width * bpp + FB_MASK) >> FB_SHIFT) * sizeof (FbBits);
+ stride = ((width * bpp + FB_MASK) >> FB_SHIFT) * (int) sizeof (FbBits);
if (stride)
{
diff-tree b16472ce94b954efdc0d9acadd3bb9b521c9c6fd (from 79677d094cf5f0f2f84f930aea882efc531b5e8b)
Author: José Fonseca <jrfonseca at tungstengraphics.com>
Date: Mon Sep 17 18:51:26 2007 +0100
Catch SourcePictTypeOther when freeing data.
diff --git a/render/picture.c b/render/picture.c
index a3c0286..129d0e7 100644
--- a/render/picture.c
+++ b/render/picture.c
@@ -1636,7 +1636,9 @@ FreePicture (pointer value,
if (pPicture->pSourcePict)
{
- if (pPicture->pSourcePict->type != SourcePictTypeSolidFill)
+ if (pPicture->pSourcePict->type != SourcePictTypeSolidFill &&
+ pPicture->pSourcePict->type != SourcePictTypeOther
+ )
xfree(pPicture->pSourcePict->linear.stops);
if (pPicture->pSourcePict->source.Destroy)
More information about the xorg-commit
mailing list