On Sep 21, 09 18:59:46 +0200, Matthias Hopf wrote: > On Sep 21, 09 09:46:55 -0700, Keith Packard wrote: > > Excerpts from Daniel Stone's message of Mon Sep 21 07:51:12 -0700 2009: > > > Could you please run these commits past xorg-devel@ rather than > > > committing directly, particularly if they're purely speculative and/or > > > known to have problems, given that we're frozen and meant to be > > > releasing two weeks from now? > > In particular, this patch should be sufficient: > > Looks reasonable. > Testing...
Tested, works. Looking closer, this patch has exactly the same consequences as my former, but is much leaner, cleaner. I'd suppose to revert the result of the other two patches, and add Keith's patch on top of that. Sounding reasonable, Daniel? Matthias -- Matthias Hopf <[email protected]> __ __ __ Maxfeldstr. 5 / 90409 Nuernberg (_ | | (_ |__ [email protected] Phone +49-911-74053-715 __) |_| __) |__ R & D www.mshopf.de
>From af5dc7aac0ca5d2244b9b8631eb5052b6173beb6 Mon Sep 17 00:00:00 2001 From: Matthias Hopf <[email protected]> Date: Mon, 21 Sep 2009 19:13:31 +0200 Subject: [PATCH] Revert fe31f9c + 977953b to fix issue for good. --- hw/xfree86/modes/xf86Cursors.c | 10 ++-------- 1 files changed, 2 insertions(+), 8 deletions(-) diff --git a/hw/xfree86/modes/xf86Cursors.c b/hw/xfree86/modes/xf86Cursors.c index 3d2d633..fc4df84 100644 --- a/hw/xfree86/modes/xf86Cursors.c +++ b/hw/xfree86/modes/xf86Cursors.c @@ -480,14 +480,8 @@ xf86_use_hw_cursor_argb (ScreenPtr screen, CursorPtr cursor) xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn); xf86CursorInfoPtr cursor_info = xf86_config->cursor_info; - if (xf86_config->cursor) { - /* Under some circumstances an already set cursor is set again. - * If the pointer is freed, ->bits is killed */ - if (xf86_config->cursor != cursor) - FreeCursor (xf86_config->cursor, None); - else - --cursor->refcnt; - } + if (xf86_config->cursor) + FreeCursor (xf86_config->cursor, None); xf86_config->cursor = cursor; ++cursor->refcnt; -- 1.6.0.2
>From a64965a734e32c1177686dba0d0e8ae634463b3b Mon Sep 17 00:00:00 2001 From: Keith Packard <[email protected]> Date: Mon, 21 Sep 2009 19:16:59 +0200 Subject: [PATCH] Fix sporadic segfault on resume due to accidentally freeing cursor. --- hw/xfree86/modes/xf86Cursors.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/hw/xfree86/modes/xf86Cursors.c b/hw/xfree86/modes/xf86Cursors.c index fc4df84..385848b 100644 --- a/hw/xfree86/modes/xf86Cursors.c +++ b/hw/xfree86/modes/xf86Cursors.c @@ -480,10 +480,10 @@ xf86_use_hw_cursor_argb (ScreenPtr screen, CursorPtr cursor) xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn); xf86CursorInfoPtr cursor_info = xf86_config->cursor_info; + ++cursor->refcnt; if (xf86_config->cursor) FreeCursor (xf86_config->cursor, None); xf86_config->cursor = cursor; - ++cursor->refcnt; /* Make sure ARGB support is available */ if ((cursor_info->Flags & HARDWARE_CURSOR_ARGB) == 0) -- 1.6.0.2
_______________________________________________ xorg-devel mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-devel
