Fixed paths with spaces not being able to Compress-Archive properly. (#141)

* Fixed paths with spaces not being able to compress properly.

Needs testing on Linux and Mac!

* Fixed path for additional files
This commit is contained in:
MelonSpeedruns 2025-07-07 01:53:02 -04:00 committed by GitHub
parent 3531bc0317
commit e76668356b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1005,11 +1005,11 @@ bool create_mod_zip(const std::filesystem::path& output_dir, const ModConfig& co
#ifdef _WIN32 #ifdef _WIN32
std::filesystem::path temp_zip_path = output_path; std::filesystem::path temp_zip_path = output_path;
temp_zip_path.replace_extension(".zip"); temp_zip_path.replace_extension(".zip");
std::string command_string = fmt::format("powershell -command Compress-Archive -Force -CompressionLevel Optimal -DestinationPath \"{}\" -Path \"{}\",\"{}\",\"{}\"", std::string command_string = fmt::format("powershell -command Compress-Archive -Force -CompressionLevel Optimal -DestinationPath '{}' -Path '{}','{}','{}'",
temp_zip_path.string(), (output_dir / symbol_filename).string(), (output_dir / binary_filename).string(), (output_dir / manifest_filename).string()); temp_zip_path.string(), (output_dir / symbol_filename).string(), (output_dir / binary_filename).string(), (output_dir / manifest_filename).string());
for (const auto& cur_file : config.inputs.additional_files) { for (const auto& cur_file : config.inputs.additional_files) {
command_string += fmt::format(",\"{}\"", cur_file.string()); command_string += fmt::format(",'{}'", cur_file.string());
} }
STARTUPINFOA si{}; STARTUPINFOA si{};