Fixed wayland cursor use-after-free at shutdown
This commit is contained in:
@@ -598,6 +598,13 @@ static SDL_Cursor *Wayland_CreateDefaultCursor(void)
|
|||||||
|
|
||||||
static void Wayland_FreeCursorData(SDL_CursorData *d)
|
static void Wayland_FreeCursorData(SDL_CursorData *d)
|
||||||
{
|
{
|
||||||
|
SDL_VideoDevice *vd = SDL_GetVideoDevice();
|
||||||
|
struct SDL_WaylandInput *input = vd->internal->input;
|
||||||
|
|
||||||
|
if (input->current_cursor == d) {
|
||||||
|
input->current_cursor = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
// Buffers for system cursors must not be destroyed.
|
// Buffers for system cursors must not be destroyed.
|
||||||
if (d->is_system_cursor) {
|
if (d->is_system_cursor) {
|
||||||
if (d->cursor_data.system.frame_callback) {
|
if (d->cursor_data.system.frame_callback) {
|
||||||
|
|||||||
Reference in New Issue
Block a user