From b2cbc3fa2dd889f06945abd240f695b334f7bd9d Mon Sep 17 00:00:00 2001 From: Oliver Hamlet Date: Tue, 14 Jul 2015 15:48:03 +0100 Subject: [PATCH] Be more conservative when setting write access. Only need to set write access on files that are currently read-only. Cuts down considerably on debugging output. --- src/backend/helpers/git_helper.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/backend/helpers/git_helper.cpp b/src/backend/helpers/git_helper.cpp index 0b788333..6c661e12 100644 --- a/src/backend/helpers/git_helper.cpp +++ b/src/backend/helpers/git_helper.cpp @@ -128,8 +128,10 @@ namespace loot { void GitHelper::FixRepoPermissions(const boost::filesystem::path& path) { BOOST_LOG_TRIVIAL(trace) << "Recursively setting write permission on directory: " << path; for (fs::recursive_directory_iterator it(path); it != fs::recursive_directory_iterator(); ++it) { - BOOST_LOG_TRIVIAL(trace) << "Setting write permission for: " << it->path(); - fs::permissions(it->path(), fs::add_perms | fs::owner_write | fs::group_write | fs::others_write); + if ((it->status().permissions() & (fs::owner_write | fs::group_write | fs::others_write)) == 0) { + BOOST_LOG_TRIVIAL(trace) << "Setting write permission for: " << it->path(); + fs::permissions(it->path(), fs::add_perms | fs::owner_write); + } } }