diff --git a/src/backends/meta-cursor-sprite-xcursor.c b/src/backends/meta-cursor-sprite-xcursor.c index f76458251..c6d0eb46d 100644 --- a/src/backends/meta-cursor-sprite-xcursor.c +++ b/src/backends/meta-cursor-sprite-xcursor.c @@ -173,16 +173,18 @@ load_cursor_on_client (MetaCursor cursor, { XcursorImages *xcursor_images; int fallback_size, i; - /* Set a 'default' fallback */ - MetaCursor cursors[] = { cursor, META_CURSOR_DEFAULT }; + const char *cursor_names[2]; if (cursor == META_CURSOR_BLANK) return create_blank_cursor_images (); - for (i = 0; i < G_N_ELEMENTS (cursors); i++) + cursor_names[0] = meta_cursor_get_name (cursor); + cursor_names[1] = meta_cursor_get_legacy_name (cursor); + + for (i = 0; i < G_N_ELEMENTS (cursor_names); i++) { xcursor_images = - XcursorLibraryLoadImages (meta_cursor_get_name (cursors[i]), + XcursorLibraryLoadImages (cursor_names[i], meta_prefs_get_cursor_theme (), meta_prefs_get_cursor_size () * scale); if (xcursor_images) diff --git a/src/backends/x11/meta-cursor-renderer-x11.c b/src/backends/x11/meta-cursor-renderer-x11.c index a5816174b..24253467d 100644 --- a/src/backends/x11/meta-cursor-renderer-x11.c +++ b/src/backends/x11/meta-cursor-renderer-x11.c @@ -71,10 +71,16 @@ static Cursor create_x_cursor (Display *xdisplay, MetaCursor cursor) { + Cursor result; + if (cursor == META_CURSOR_BLANK) return create_blank_cursor (xdisplay); - return XcursorLibraryLoadCursor (xdisplay, meta_cursor_get_name (cursor)); + result = XcursorLibraryLoadCursor (xdisplay, meta_cursor_get_name (cursor)); + if (!result) + result = XcursorLibraryLoadCursor (xdisplay, meta_cursor_get_legacy_name (cursor)); + + return result; } static gboolean