Sfoglia il codice sorgente

Fixed bug 2482 - Wayland_CreateSystemCursor trying to load nonexistent "wait" cursor

Bryan Cain

Wayland_CreateSystemCursor tries to load a cursor named "wait" for two of the system cursor categories.  This causes a segmentation fault when one of these cursors is used, because "wait" is not an actual cursor name in X11/Wayland cursor themes.

I can't attach my patch since I'm on a mobile right now, but I can confirm that simply replacing "wait" with "watch" for both of its uses in Wayland_CreateSystemCursor (in SDL_waylandmouse.c) fixes the bug.
Sam Lantinga 11 anni fa
parent
commit
59690a4e97
1 ha cambiato i file con 2 aggiunte e 2 eliminazioni
  1. 2 2
      src/video/wayland/SDL_waylandmouse.c

+ 2 - 2
src/video/wayland/SDL_waylandmouse.c

@@ -267,13 +267,13 @@ Wayland_CreateSystemCursor(SDL_SystemCursor id)
         cursor = WAYLAND_wl_cursor_theme_get_cursor(d->cursor_theme, "xterm");
         break;
     case SDL_SYSTEM_CURSOR_WAIT:
-        cursor = WAYLAND_wl_cursor_theme_get_cursor(d->cursor_theme, "wait");
+        cursor = WAYLAND_wl_cursor_theme_get_cursor(d->cursor_theme, "watch");
         break;
     case SDL_SYSTEM_CURSOR_CROSSHAIR:
         cursor = WAYLAND_wl_cursor_theme_get_cursor(d->cursor_theme, "hand1");
         break;
     case SDL_SYSTEM_CURSOR_WAITARROW:
-        cursor = WAYLAND_wl_cursor_theme_get_cursor(d->cursor_theme, "wait");
+        cursor = WAYLAND_wl_cursor_theme_get_cursor(d->cursor_theme, "watch");
         break;
     case SDL_SYSTEM_CURSOR_SIZENWSE:
         cursor = WAYLAND_wl_cursor_theme_get_cursor(d->cursor_theme, "hand1");