http://bugs.winehq.org/show_bug.cgi?id=6432
Summary: rapidly flashing cursor mouse.c (patch) Product: Wine Version: CVS Platform: PC-x86-64 URL: http://comptune.com/forums/viewtopic.php?t=253 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: wine-x11driver AssignedTo: wine-bugs@winehq.org ReportedBy: nospam@thenerdshow.com
You can play Dark Age of Camelot in wine by faking wine into thinking 12 bit color is a supported format and running login.dll directly. When the game is started the cursor switches from the normal black to white and it looks fine. However, once game.dll is loaded, the cursor rapidly flashes and this makes it almost invisible. Game play and testing is difficult at best with this (nearly) invisible mouse.
I have made the following patch that fixes the problem of the flashing mouse cursor in Dark Age of Camelog without breaking other d3d apps I have tested, including Warcraft III and Minions of Mirth.
I'm still fairly new at hacking wine... This patch prevents wine from creating a null cursor. The only problem might be a cosmetic one, where an application tries to hide the cursor when displaying a video for example. Therefore, I am seeking a better solution.
diff --git a/dlls/winex11.drv/mouse.c b/dlls/winex11.drv/mouse.c index 5ac714c..07cb0b1 100644 --- a/dlls/winex11.drv/mouse.c +++ b/dlls/winex11.drv/mouse.c @@ -642,6 +642,8 @@ static Cursor create_cursor( Display *di */ void X11DRV_SetCursor( CURSORICONINFO *lpCursor ) { + if (!lpCursor) return; /* Hack: prevent disappearing cursor in Dark Age + Cursor cursor;
if (root_window != DefaultRootWindow(gdi_display))