Преглед на файлове

Merge pull request #16749 from PJB3005/18-02-16-project-manager-mono-debug-fix

Makes project manager never initialize mono debug.
Ignacio Etcheverry преди 7 години
родител
ревизия
dad47d8876
променени са 3 файла, в които са добавени 9 реда и са изтрити 17 реда
  1. 6 1
      main/main.cpp
  2. 1 0
      main/main.h
  3. 2 16
      modules/mono/mono_gd/gd_mono.cpp

+ 6 - 1
main/main.cpp

@@ -122,13 +122,18 @@ static bool force_lowdpi = false;
 static int init_screen = -1;
 static bool use_vsync = true;
 static bool editor = false;
-static bool project_manager = false;
 static bool show_help = false;
 static bool disable_render_loop = false;
 static int fixed_fps = -1;
 
 static OS::ProcessID allow_focus_steal_pid = 0;
 
+static bool project_manager = false;
+
+bool Main::is_project_manager() {
+	return project_manager;
+}
+
 void initialize_physics() {
 
 	/// 3D Physics Server

+ 1 - 0
main/main.h

@@ -56,6 +56,7 @@ public:
 	static bool iteration();
 	static void cleanup();
 	static void force_redraw();
+	static bool is_project_manager();
 };
 
 #endif

+ 2 - 16
modules/mono/mono_gd/gd_mono.cpp

@@ -47,6 +47,7 @@
 
 #ifdef TOOLS_ENABLED
 #include "../editor/godotsharp_editor.h"
+#include "main/main.h"
 #endif
 
 void gdmono_unhandled_exception_hook(MonoObject *exc, void *user_data) {
@@ -94,21 +95,6 @@ static bool _wait_for_debugger_msecs(uint32_t p_msecs) {
 }
 #endif
 
-#ifdef TOOLS_ENABLED
-// temporary workaround. should be provided from Main::setup/setup2 instead
-bool _is_project_manager_requested() {
-
-	List<String> cmdline_args = OS::get_singleton()->get_cmdline_args();
-	for (List<String>::Element *E = cmdline_args.front(); E; E = E->next()) {
-		const String &arg = E->get();
-		if (arg == "-p" || arg == "--project-manager")
-			return true;
-	}
-
-	return false;
-}
-#endif
-
 #ifdef DEBUG_ENABLED
 void gdmono_debug_init() {
 
@@ -121,7 +107,7 @@ void gdmono_debug_init() {
 #ifdef TOOLS_ENABLED
 	if (Engine::get_singleton()->is_editor_hint() ||
 			ProjectSettings::get_singleton()->get_resource_path().empty() ||
-			_is_project_manager_requested()) {
+			Main::is_project_manager()) {
 		return;
 	}
 #endif