[PATCH xfree86] Skip SetCursor when vtSema is FALSE.

Adam Jackson ajax at nwnk.net
Mon Oct 27 08:56:45 PDT 2014


On Wed, 2014-10-22 at 12:55 +0530, Yogish Kulkarni wrote:
> Consider below sequence -
> 1) Cursor is removed : isUp will be FALSE if HW cursor is set.
> 2) VT switched away from X : vtSema becomes FALSE.
> 3) xf86CursorSetCursor is called with non-null CursorPtr :
> Saves the passed in CursorPtr, fallbacks to SW cursor and invokes
> spriteFuncs->SetCursor which saves the area under cursor and restores
> the cursor. This sets isUp to TRUE and as vtSema is FALSE saved data
> is garbage.
> 4) VT switched to X : vtSema becomes TRUE. xf86Cursor enable fb access
> is called which will remove the SW cursor, i.e copies saved data in #3
> to screen.
> 
> This results to momentary garbage data on screen. Hence when !vtSema
> skip spriteFuncs->SetCursor.
> 
> X.Org Bug 85313 <https://bugs.freedesktop.org/show_bug.cgi?id=85313>

Reviewed-by: Adam Jackson <ajax at redhat.com>

- ajax



More information about the xorg-devel mailing list