From 9fa91288922d1a77d94214e6fca2afde9c5ae4f6 Mon Sep 17 00:00:00 2001 From: rustdesk Date: Wed, 28 Jun 2023 12:05:27 +0800 Subject: [PATCH] exit directly in rustdesk_core_main for macos --- flutter/macos/Runner/MainFlutterWindow.swift | 6 +----- src/flutter.rs | 8 ++++++-- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/flutter/macos/Runner/MainFlutterWindow.swift b/flutter/macos/Runner/MainFlutterWindow.swift index b9e5a368a..141773a60 100644 --- a/flutter/macos/Runner/MainFlutterWindow.swift +++ b/flutter/macos/Runner/MainFlutterWindow.swift @@ -1,6 +1,5 @@ import Cocoa import AVFoundation -import Foundation import FlutterMacOS import desktop_multi_window // import bitsdojo_window_macos @@ -22,10 +21,7 @@ import texture_rgba_renderer class MainFlutterWindow: NSWindow { override func awakeFromNib() { - if (!rustdesk_core_main()){ - Process.terminate() - return - } + rustdesk_core_main(); let flutterViewController = FlutterViewController.init() let windowFrame = self.frame self.contentViewController = flutterViewController diff --git a/src/flutter.rs b/src/flutter.rs index 149e79914..4008b2420 100644 --- a/src/flutter.rs +++ b/src/flutter.rs @@ -67,8 +67,12 @@ lazy_static::lazy_static! { #[no_mangle] pub extern "C" fn rustdesk_core_main() -> bool { #[cfg(not(any(target_os = "android", target_os = "ios")))] - return crate::core_main::core_main().is_some(); - #[cfg(any(target_os = "android", target_os = "ios"))] + if crate::core_main::core_main().is_some() { + return true; + } else { + #[cfg(target_os = "macos")] + std::process::exit(0); + } false }