Browse Source

[Windows] Only use long executable path when necessary, fix broken apksigner detection.

bruvzg 11 months ago
parent
commit
2c991a727b
2 changed files with 6 additions and 1 deletions
  1. 5 0
      platform/android/export/export_plugin.cpp
  2. 1 1
      platform/windows/os_windows.cpp

+ 5 - 0
platform/android/export/export_plugin.cpp

@@ -2276,6 +2276,11 @@ String EditorExportPlatformAndroid::get_apksigner_path(int p_target_sdk, bool p_
 	bool failed = false;
 	String version_to_use;
 
+	String java_sdk_path = EDITOR_GET("export/android/java_sdk_path");
+	if (!java_sdk_path.is_empty()) {
+		OS::get_singleton()->set_environment("JAVA_HOME", java_sdk_path);
+	}
+
 	List<String> args;
 	args.push_back("--version");
 	String output;

+ 1 - 1
platform/windows/os_windows.cpp

@@ -101,7 +101,7 @@ static String fix_path(const String &p_path) {
 	}
 	path = path.simplify_path();
 	path = path.replace("/", "\\");
-	if (!path.is_network_share_path() && !path.begins_with(R"(\\?\)")) {
+	if (path.size() >= MAX_PATH && !path.is_network_share_path() && !path.begins_with(R"(\\?\)")) {
 		path = R"(\\?\)" + path;
 	}
 	return path;