Commit 47646a20 authored by dscho's avatar dscho

redraw region under old cursor even if the old cursor doesn't have to be freed.

parent ff87112b
...@@ -616,14 +616,15 @@ void rfbSetCursor(rfbScreenInfoPtr rfbScreen,rfbCursorPtr c) ...@@ -616,14 +616,15 @@ void rfbSetCursor(rfbScreenInfoPtr rfbScreen,rfbCursorPtr c)
LOCK(rfbScreen->cursorMutex); LOCK(rfbScreen->cursorMutex);
if(rfbScreen->cursor && rfbScreen->cursor->cleanup) { if(rfbScreen->cursor) {
iterator=rfbGetClientIterator(rfbScreen); iterator=rfbGetClientIterator(rfbScreen);
while((cl=rfbClientIteratorNext(iterator))) while((cl=rfbClientIteratorNext(iterator)))
if(!cl->enableCursorShapeUpdates) if(!cl->enableCursorShapeUpdates)
rfbRedrawAfterHideCursor(cl); rfbRedrawAfterHideCursor(cl);
rfbReleaseClientIterator(iterator); rfbReleaseClientIterator(iterator);
rfbFreeCursor(rfbScreen->cursor); if(rfbScreen->cursor->cleanup)
rfbFreeCursor(rfbScreen->cursor);
} }
rfbScreen->cursor = c; rfbScreen->cursor = c;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment