diff --git a/src/native/linux/extxcursor.cpp b/src/native/linux/extxcursor.cpp index 201dcee4..cff3b092 100644 --- a/src/native/linux/extxcursor.cpp +++ b/src/native/linux/extxcursor.cpp @@ -51,14 +51,16 @@ bool isXcursorLoaded(void) { } void closeXcursor(void) { - load_success = false; - dlclose(xcursor_handle); - xcursor_handle = NULL; - XcursorSupportsARGB = NULL; - XcursorSupportsAnim = NULL; - XcursorImageCreate = NULL; - XcursorImageDestroy = NULL; - XcursorImagesCreate = NULL; - XcursorImagesDestroy = NULL; - XcursorImagesLoadCursor = NULL; + if (load_success) { + load_success = false; + dlclose(xcursor_handle); + xcursor_handle = NULL; + XcursorSupportsARGB = NULL; + XcursorSupportsAnim = NULL; + XcursorImageCreate = NULL; + XcursorImageDestroy = NULL; + XcursorImagesCreate = NULL; + XcursorImagesDestroy = NULL; + XcursorImagesLoadCursor = NULL; + } }