diff --git a/xs/src/slic3r/Utils/PresetUpdater.cpp b/xs/src/slic3r/Utils/PresetUpdater.cpp index 80651aece2..f34fc4c19d 100644 --- a/xs/src/slic3r/Utils/PresetUpdater.cpp +++ b/xs/src/slic3r/Utils/PresetUpdater.cpp @@ -440,7 +440,9 @@ void PresetUpdater::priv::copy_file(const fs::path &source, const fs::path &targ static const auto perms = fs::owner_read | fs::owner_write | fs::group_read | fs::others_read; // aka 644 // Make sure the file has correct permission both before and after we copy over it - fs::permissions(target, perms); + if (fs::exists(target)) { + fs::permissions(target, perms); + } fs::copy_file(source, target, fs::copy_option::overwrite_if_exists); fs::permissions(target, perms); }