diff --git a/dix/window.c b/dix/window.c index 3b69e4547..a941dacd7 100644 --- a/dix/window.c +++ b/dix/window.c @@ -3823,8 +3823,14 @@ ChangeWindowDeviceCursor(WindowPtr pWin, if (!pCursor) /* remove from list */ { - pPrev->next = pNode->next; + if(pPrev) + pPrev->next = pNode->next; + else + /* first item in list */ + pWin->optional->deviceCursors = pNode->next; + xfree(pNode); + return Success; } } else