f5670b4a7e
This makes the cursor pointer held by xf86Cursors.c get reset to NULL whenever the cursor isn't displayed, and means that the reference count held in xf86Cursor.c is sufficient to cover the reference in xf86Cursors.c. As HideCursor may be called in the cursor loading path after UseHWCursor or UseHWCursorARGB when HARDWARE_CURSOR_UPDATE_UNHIDDEN isn't set in the Flags field, the setting of the cursor pointer had to be moved to the LoadCursor paths. LoadCursorARGBCheck gets the cursor pointer, but LoadCursorImageCheck does not. For LoadCursorImageCheck, I added a new function, xf86CurrentCursor, which returns the current cursor. With this new function, we can eliminate the cursor pointer from the xf86CrtcConfigRec, once drivers are converted over to use it. Signed-off-by: Keith Packard <keithp@keithp.com> Acked-by: Peter Hutterer <peter.hutterer@who-t.net> |
||
---|---|---|
.. | ||
BT.c | ||
BT.h | ||
BTPriv.h | ||
CURSOR.NOTES | ||
IBM.c | ||
IBM.h | ||
IBMPriv.h | ||
Makefile.am | ||
TI.c | ||
TI.h | ||
TIPriv.h | ||
xf86Cursor.c | ||
xf86Cursor.h | ||
xf86CursorPriv.h | ||
xf86HWCurs.c | ||
xf86RamDac.c | ||
xf86RamDac.h | ||
xf86RamDacCmap.c | ||
xf86RamDacPriv.h |