У меня есть NSWindow, в котором размещается WebView, который я подключил к обработчику сценариев.
Теперь, когда пользователь нажимает кнопку на элементе управления в WebView, он вызывает метод Objective C для моего объекта.
В этом конкретном случае действие кнопки состоит в том, чтобы попытаться закрыть окно, в котором размещен WebView
[[окно веб-просмотра] закрыть];
Обычно это работает, но иногда я получаю SEGFAULT или какое-либо другое нарушение прав доступа в результате цикла событий, пытающегося отправить сообщение мыши в теперь уничтоженное представление.
Callstack ужасен, когда я пытаюсь закрыть окно, четный цикл вызвал окно, вызвал webView, вызвал мой делегат скрипта, когда я пытаюсь закрыть окно. Уничтожение объекта от обратного вызова этого объекта, как правило, опасно, но я не могу понять, как окна должны безопасно закрываться в результате взаимодействия пользователей с представлениями о них.