[macOS] Fix profiler cleanup.

This commit is contained in:
Pāvels Nadtočajevs 2025-12-04 09:03:06 +02:00
parent 63e14e13f9
commit 0cc15abfae
No known key found for this signature in database
GPG key ID: 8413210218EF35D2
2 changed files with 5 additions and 3 deletions

View file

@ -132,6 +132,8 @@ int main(int argc, char **argv) {
os->run();
// Note: `os->run()` will never return if `OS_MacOS_NSApp` is used. Use `OS_MacOS_NSApp::cleanup()` for cleanup.
int exit_code = os->get_exit_code();
memdelete(os);

View file

@ -1076,7 +1076,7 @@ OS_MacOS::OS_MacOS(const char *p_execpath, int p_argc, char **p_argv) {
// MARK: - OS_MacOS_NSApp
void OS_MacOS_NSApp::run() {
[NSApp run];
[NSApp run]; // Note: this call will never return. Use `OS_MacOS_NSApp::cleanup()` for cleanup.
}
static bool sig_received = false;
@ -1154,8 +1154,7 @@ void OS_MacOS_NSApp::start_main() {
}
void OS_MacOS_NSApp::terminate() {
godot_cleanup_profiler();
// Note: This method only sends app termination request. Use `OS_MacOS_NSApp::cleanup()` for cleanup.
if (pre_wait_observer) {
CFRunLoopRemoveObserver(CFRunLoopGetCurrent(), pre_wait_observer, kCFRunLoopCommonModes);
CFRelease(pre_wait_observer);
@ -1175,6 +1174,7 @@ void OS_MacOS_NSApp::cleanup() {
Main::cleanup();
}
}
godot_cleanup_profiler();
}
OS_MacOS_NSApp::OS_MacOS_NSApp(const char *p_execpath, int p_argc, char **p_argv) :