diff options
author | zeising <zeising@FreeBSD.org> | 2012-12-14 19:02:48 +0800 |
---|---|---|
committer | zeising <zeising@FreeBSD.org> | 2012-12-14 19:02:48 +0800 |
commit | f8679ef171f8eb8efbc6662799c53b41fb8e71be (patch) | |
tree | 2b50078136e2b59e7581d3b3e071a107e6922b9f /x11-servers | |
parent | 2a20906a858af06ccf61e1e1cd0dd98dee88d575 (diff) | |
download | freebsd-ports-gnome-f8679ef171f8eb8efbc6662799c53b41fb8e71be.tar.gz freebsd-ports-gnome-f8679ef171f8eb8efbc6662799c53b41fb8e71be.tar.zst freebsd-ports-gnome-f8679ef171f8eb8efbc6662799c53b41fb8e71be.zip |
Add a patch to fix a couple of cases of use before initialized in the new
xorg-server. Without this patch, xorg-server compiled with clang segfaults.
Bump portrevision since clang is default compiler on current.
Reviewed by: kwm
Approved by: kwm, miwi (mentors, implicit)
Diffstat (limited to 'x11-servers')
-rw-r--r-- | x11-servers/xorg-server/Makefile | 5 | ||||
-rw-r--r-- | x11-servers/xorg-server/files/extra-clang | 53 |
2 files changed, 56 insertions, 2 deletions
diff --git a/x11-servers/xorg-server/Makefile b/x11-servers/xorg-server/Makefile index 6a7d08f273b2..ac6e6fe5202e 100644 --- a/x11-servers/xorg-server/Makefile +++ b/x11-servers/xorg-server/Makefile @@ -26,10 +26,11 @@ SLAVE_PORT?= no .if defined(WITH_NEW_XORG) XORG_VERSION= 1.10.6 -XORG_REVISION= 1 +XORG_REVISION= 2 PLIST_SUB+= OLD="@comment " NEW="" EXTRA_PATCHES+= ${FILESDIR}/extra-hw_dmx_glxProxy_compsize.h \ - ${FILESDIR}/extra-hw_dmx_glxProxy_glxcmds.h + ${FILESDIR}/extra-hw_dmx_glxProxy_glxcmds.h \ + ${FILESDIR}/extra-clang .else XORG_VERSION= 1.7.7 XORG_REVISION= 6 diff --git a/x11-servers/xorg-server/files/extra-clang b/x11-servers/xorg-server/files/extra-clang new file mode 100644 index 000000000000..82817592415a --- /dev/null +++ b/x11-servers/xorg-server/files/extra-clang @@ -0,0 +1,53 @@ +--- hw/xfree86/common/xf86Xinput.c.orig 2012-12-13 23:58:55.673738569 +0100 ++++ hw/xfree86/common/xf86Xinput.c 2012-12-13 23:59:52.528738525 +0100 +@@ -479,7 +479,7 @@ + MatchAttrToken(const char *attr, struct list *patterns, + int (*compare)(const char *attr, const char *pattern)) + { +- const xf86MatchGroup *group; ++ const xf86MatchGroup *group = NULL; + + /* If there are no patterns, accept the match */ + if (list_is_empty(patterns)) +--- hw/xfree86/parser/InputClass.c.orig 2012-12-14 00:03:07.149734651 +0100 ++++ hw/xfree86/parser/InputClass.c 2012-12-14 00:04:09.522735172 +0100 +@@ -338,7 +338,8 @@ + XF86ConfInputClassPtr prev; + + while (ptr) { +- xf86MatchGroup *group, *next; ++ xf86MatchGroup *group = NULL; ++ xf86MatchGroup *next; + char **list; + + TestFree(ptr->identifier); +--- hw/xfree86/dri2/dri2.c.orig 2012-12-14 00:06:39.680738243 +0100 ++++ hw/xfree86/dri2/dri2.c 2012-12-14 00:08:14.310729622 +0100 +@@ -201,7 +201,7 @@ + static DRI2DrawableRefPtr + DRI2LookupDrawableRef(DRI2DrawablePtr pPriv, XID id) + { +- DRI2DrawableRefPtr ref; ++ DRI2DrawableRefPtr ref = NULL; + + list_for_each_entry(ref, &pPriv->reference_list, link) { + if (ref->id == id) +@@ -267,7 +267,8 @@ + { + DRI2DrawablePtr pPriv = p; + DRI2ScreenPtr ds = pPriv->dri2_screen; +- DRI2DrawableRefPtr ref, next; ++ DRI2DrawableRefPtr ref = NULL; ++ DRI2DrawableRefPtr next; + WindowPtr pWin; + PixmapPtr pPixmap; + DrawablePtr pDraw; +@@ -534,7 +535,7 @@ + DRI2InvalidateDrawable(DrawablePtr pDraw) + { + DRI2DrawablePtr pPriv = DRI2GetDrawable(pDraw); +- DRI2DrawableRefPtr ref; ++ DRI2DrawableRefPtr ref = NULL; + + if (!pPriv) + return; |