fix: crash on macOS non-programmatic close (#41264)

This commit is contained in:
Shelley Vohr 2024-02-09 22:44:24 +01:00 коммит произвёл GitHub
Родитель 9655ae7d6a
Коммит c894645ac6
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
1 изменённых файлов: 4 добавлений и 1 удалений

Просмотреть файл

@ -439,11 +439,14 @@ void NativeWindowMac::Close() {
if ([window_ attachedSheet])
[window_ endSheet:[window_ attachedSheet]];
// window_ could be nil after performClose.
bool should_notify = is_modal() && parent() && IsVisible();
[window_ performClose:nil];
// Closing a sheet doesn't trigger windowShouldClose,
// so we need to manually call it ourselves here.
if (is_modal() && parent() && IsVisible()) {
if (should_notify) {
NotifyWindowCloseButtonClicked();
}
}