[69690] trunk/dports/x11/xorg-server-devel
jeremyhu at macports.org
jeremyhu at macports.org
Tue Jul 13 09:06:43 PDT 2010
Revision: 69690
http://trac.macports.org/changeset/69690
Author: jeremyhu at macports.org
Date: 2010-07-13 09:06:42 -0700 (Tue, 13 Jul 2010)
Log Message:
-----------
xorg-server-devel: Fix a possible memory corruption issue on ppc
Modified Paths:
--------------
trunk/dports/x11/xorg-server-devel/Portfile
Added Paths:
-----------
trunk/dports/x11/xorg-server-devel/files/0025-XQuartz-Avoid-a-crash-when-mistakenly-free-ing-in-Qu.patch
Modified: trunk/dports/x11/xorg-server-devel/Portfile
===================================================================
--- trunk/dports/x11/xorg-server-devel/Portfile 2010-07-13 16:04:43 UTC (rev 69689)
+++ trunk/dports/x11/xorg-server-devel/Portfile 2010-07-13 16:06:42 UTC (rev 69690)
@@ -5,6 +5,7 @@
name xorg-server-devel
set my_name xorg-server
version 1.8.99.904
+revision 1
categories x11 devel
maintainers jeremyhu openmaintainer
description The X.org / Xquartz X server.
@@ -82,6 +83,7 @@
RAWCPP=${configure.cpp}
patchfiles \
+ 0025-XQuartz-Avoid-a-crash-when-mistakenly-free-ing-in-Qu.patch \
0005-XQuartz-Remove-some-dead-code.patch \
0006-Workaround-the-GC-clipping-problem-in-miPaintWindow-.patch \
0007-fb-Revert-fb-changes-that-broke-XQuartz.patch
Added: trunk/dports/x11/xorg-server-devel/files/0025-XQuartz-Avoid-a-crash-when-mistakenly-free-ing-in-Qu.patch
===================================================================
--- trunk/dports/x11/xorg-server-devel/files/0025-XQuartz-Avoid-a-crash-when-mistakenly-free-ing-in-Qu.patch (rev 0)
+++ trunk/dports/x11/xorg-server-devel/files/0025-XQuartz-Avoid-a-crash-when-mistakenly-free-ing-in-Qu.patch 2010-07-13 16:06:42 UTC (rev 69690)
@@ -0,0 +1,51 @@
+From 648d189548530fa23d97d1e8737f89d297f1c443 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston <jeremyhu at apple.com>
+Date: Tue, 13 Jul 2010 08:25:27 -0700
+Subject: [PATCH 25/29] XQuartz: Avoid a crash when mistakenly free()ing in QuartzSetCursor on some configs
+
+Signed-off-by: Jeremy Huddleston <jeremyhu at apple.com>
+---
+ hw/xquartz/xpr/xprCursor.c | 6 +++++-
+ 1 files changed, 5 insertions(+), 1 deletions(-)
+
+diff --git xorg-server-1.8.99.904/hw/xquartz/xpr/xprCursor.c xorg-server-1.8.99.904/hw/xquartz/xpr/xprCursor.c
+index 67fcbe7..a106e72 100644
+--- xorg-server-1.8.99.904/hw/xquartz/xpr/xprCursor.c
++++ xorg-server-1.8.99.904/hw/xquartz/xpr/xprCursor.c
+@@ -67,6 +67,7 @@ static Bool
+ load_cursor(CursorPtr src, int screen)
+ {
+ uint32_t *data;
++ Bool free_data = FALSE;
+ uint32_t rowbytes;
+ int width, height;
+ int hot_x, hot_y;
+@@ -95,6 +96,7 @@ load_cursor(CursorPtr src, int screen)
+ unsigned i;
+ rowbytes = src->bits->width * sizeof (CARD32);
+ data = malloc(rowbytes * src->bits->height);
++ free_data = TRUE;
+ if(!data) {
+ FatalError("Failed to allocate memory in %s\n", __func__);
+ }
+@@ -121,6 +123,7 @@ load_cursor(CursorPtr src, int screen)
+ /* round up to 8 pixel boundary so we can convert whole bytes */
+ rowbytes = ((src->bits->width * 4) + 31) & ~31;
+ data = malloc(rowbytes * src->bits->height);
++ free_data = TRUE;
+ if(!data) {
+ FatalError("Failed to allocate memory in %s\n", __func__);
+ }
+@@ -173,7 +176,8 @@ load_cursor(CursorPtr src, int screen)
+ }
+
+ err = xp_set_cursor(width, height, hot_x, hot_y, data, rowbytes);
+- free(data);
++ if(free_data)
++ free(data);
+ return err == Success;
+ }
+
+--
+1.7.1.1
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20100713/1b0ee2f7/attachment.html>
More information about the macports-changes
mailing list