Fixed bug 3880 - X Error upon quit since rev. 11607 Ozkan Sezer Since changeset 11607:60cd425a2f14, I am getting the following error upon quit. Running testsprite2, clicking the mouse, and quiting it is enough to trigger it. This is on my old Fedora9 x86-Linux: X Error of failed request: BadCursor (invalid Cursor parameter) Major opcode of failed request: 2 (X_ChangeWindowAttributes) Resource id in failed request: 0xb057340 Serial number of failed request: 905 Current serial number in output stream: 906 Reverting https://hg.libsdl.org/SDL/rev/60cd425a2f14 removes the error.
diff --git a/src/events/SDL_mouse.c b/src/events/SDL_mouse.c
index 794eafe..80c367f 100644
--- a/src/events/SDL_mouse.c
+++ b/src/events/SDL_mouse.c
@@ -580,13 +580,16 @@ SDL_MouseQuit(void)
SDL_FreeCursor(cursor);
cursor = next;
}
+ mouse->cursors = NULL;
if (mouse->def_cursor && mouse->FreeCursor) {
mouse->FreeCursor(mouse->def_cursor);
+ mouse->def_cursor = NULL;
}
if (mouse->clickstate) {
SDL_free(mouse->clickstate);
+ mouse->clickstate = NULL;
}
SDL_DelHintCallback(SDL_HINT_MOUSE_NORMAL_SPEED_SCALE,