From 1484771f26a306cc257a689260bc15431da505f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pa=CC=84vels=20Nadtoc=CC=8Cajevs?= <7645683+bruvzg@users.noreply.github.com> Date: Fri, 6 Jun 2025 09:23:22 +0300 Subject: [PATCH] Fix native file dialog crash with invalid filter. --- platform/linuxbsd/freedesktop_portal_desktop.cpp | 2 +- platform/macos/godot_open_save_delegate.mm | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/platform/linuxbsd/freedesktop_portal_desktop.cpp b/platform/linuxbsd/freedesktop_portal_desktop.cpp index b9ac32bbc1..b4c6f652f4 100644 --- a/platform/linuxbsd/freedesktop_portal_desktop.cpp +++ b/platform/linuxbsd/freedesktop_portal_desktop.cpp @@ -670,7 +670,7 @@ Error FreeDesktopPortalDesktop::file_dialog_show(DisplayServer::WindowID p_windo Vector tokens = p_filters[i].split(";"); if (tokens.size() >= 1) { String flt = tokens[0].strip_edges(); - String mime = (tokens.size() >= 2) ? tokens[2].strip_edges() : String(); + String mime = (tokens.size() >= 3) ? tokens[2].strip_edges() : String(); if (!flt.is_empty() || !mime.is_empty()) { if (tokens.size() >= 2) { if (flt == "*.*") { diff --git a/platform/macos/godot_open_save_delegate.mm b/platform/macos/godot_open_save_delegate.mm index 8b431b5697..346bfe1b64 100644 --- a/platform/macos/godot_open_save_delegate.mm +++ b/platform/macos/godot_open_save_delegate.mm @@ -119,7 +119,7 @@ Vector tokens = p_filters[i].split(";"); if (tokens.size() >= 1) { String flt = tokens[0].strip_edges(); - String mime = (tokens.size() >= 2) ? tokens[2].strip_edges() : String(); + String mime = (tokens.size() >= 3) ? tokens[2].strip_edges() : String(); int filter_slice_count = flt.get_slice_count(","); NSMutableArray *type_filters = [[NSMutableArray alloc] init]; @@ -173,7 +173,7 @@ Vector tokens = p_filters[0].split(";"); if (tokens.size() >= 1) { String flt = tokens[0].strip_edges(); - String mime = (tokens.size() >= 2) ? tokens[2] : String(); + String mime = (tokens.size() >= 3) ? tokens[2] : String(); int filter_slice_count = flt.get_slice_count(","); NSMutableArray *type_filters = [[NSMutableArray alloc] init];