mirror of
https://github.com/NixOS/nix
synced 2024-09-19 10:50:24 -04:00
inline the usage of nix::renameFile
use `std::filesystem::rename` everywhere and remove `nix::renameFile`
This commit is contained in:
parent
87ab3c0ea4
commit
4537663740
|
@ -12,7 +12,7 @@ void IndirectRootStore::makeSymlink(const Path & link, const Path & target)
|
||||||
createSymlink(target, tempLink);
|
createSymlink(target, tempLink);
|
||||||
|
|
||||||
/* Atomically replace the old one. */
|
/* Atomically replace the old one. */
|
||||||
renameFile(tempLink, link);
|
std::filesystem::rename(tempLink, link);
|
||||||
}
|
}
|
||||||
|
|
||||||
Path IndirectRootStore::addPermRoot(const StorePath & storePath, const Path & _gcRoot)
|
Path IndirectRootStore::addPermRoot(const StorePath & storePath, const Path & _gcRoot)
|
||||||
|
|
|
@ -64,7 +64,7 @@ protected:
|
||||||
AutoDelete del(tmp, false);
|
AutoDelete del(tmp, false);
|
||||||
StreamToSourceAdapter source(istream);
|
StreamToSourceAdapter source(istream);
|
||||||
writeFile(tmp, source);
|
writeFile(tmp, source);
|
||||||
renameFile(tmp, path2);
|
std::filesystem::rename(tmp, path2);
|
||||||
del.cancel();
|
del.cancel();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1779,7 +1779,7 @@ void LocalStore::addBuildLog(const StorePath & drvPath, std::string_view log)
|
||||||
|
|
||||||
writeFile(tmpFile, compress("bzip2", log));
|
writeFile(tmpFile, compress("bzip2", log));
|
||||||
|
|
||||||
renameFile(tmpFile, logPath);
|
std::filesystem::rename(tmpFile, logPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
std::optional<std::string> LocalStore::getVersion()
|
std::optional<std::string> LocalStore::getVersion()
|
||||||
|
|
|
@ -783,7 +783,7 @@ static void movePath(const Path & src, const Path & dst)
|
||||||
if (changePerm)
|
if (changePerm)
|
||||||
chmod_(src, st.st_mode | S_IWUSR);
|
chmod_(src, st.st_mode | S_IWUSR);
|
||||||
|
|
||||||
renameFile(src, dst);
|
std::filesystem::rename(src, dst);
|
||||||
|
|
||||||
if (changePerm)
|
if (changePerm)
|
||||||
chmod_(dst, st.st_mode);
|
chmod_(dst, st.st_mode);
|
||||||
|
|
|
@ -285,7 +285,7 @@ static void movePath(const Path & src, const Path & dst)
|
||||||
if (changePerm)
|
if (changePerm)
|
||||||
chmod_(src, st.st_mode | S_IWUSR);
|
chmod_(src, st.st_mode | S_IWUSR);
|
||||||
|
|
||||||
renameFile(src, dst);
|
std::filesystem::rename(src, dst);
|
||||||
|
|
||||||
if (changePerm)
|
if (changePerm)
|
||||||
chmod_(dst, st.st_mode);
|
chmod_(dst, st.st_mode);
|
||||||
|
@ -372,7 +372,7 @@ bool LocalDerivationGoal::cleanupDecideWhetherDiskFull()
|
||||||
if (buildMode != bmCheck && status.known->isValid()) continue;
|
if (buildMode != bmCheck && status.known->isValid()) continue;
|
||||||
auto p = worker.store.toRealPath(status.known->path);
|
auto p = worker.store.toRealPath(status.known->path);
|
||||||
if (pathExists(chrootRootDir + p))
|
if (pathExists(chrootRootDir + p))
|
||||||
renameFile((chrootRootDir + p), p);
|
std::filesystem::rename((chrootRootDir + p), p);
|
||||||
}
|
}
|
||||||
|
|
||||||
return diskFull;
|
return diskFull;
|
||||||
|
@ -2569,7 +2569,7 @@ SingleDrvOutputs LocalDerivationGoal::registerOutputs()
|
||||||
// that there's no stale file descriptor pointing to it
|
// that there's no stale file descriptor pointing to it
|
||||||
Path tmpOutput = actualPath + ".tmp";
|
Path tmpOutput = actualPath + ".tmp";
|
||||||
copyFile(actualPath, tmpOutput, true);
|
copyFile(actualPath, tmpOutput, true);
|
||||||
renameFile(tmpOutput, actualPath);
|
std::filesystem::rename(tmpOutput, actualPath);
|
||||||
|
|
||||||
auto newInfo0 = newInfoFromCA(DerivationOutput::CAFloating {
|
auto newInfo0 = newInfoFromCA(DerivationOutput::CAFloating {
|
||||||
.method = dof.ca.method,
|
.method = dof.ca.method,
|
||||||
|
|
|
@ -24,7 +24,7 @@ void builtinUnpackChannel(
|
||||||
auto entries = readDirectory(out);
|
auto entries = readDirectory(out);
|
||||||
if (entries.size() != 1)
|
if (entries.size() != 1)
|
||||||
throw Error("channel tarball '%s' contains more than one file", src);
|
throw Error("channel tarball '%s' contains more than one file", src);
|
||||||
renameFile(entries[0].path().string(), (out + "/" + channelName));
|
std::filesystem::rename(entries[0].path().string(), (out + "/" + channelName));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -588,7 +588,7 @@ void replaceSymlink(const Path & target, const Path & link)
|
||||||
throw;
|
throw;
|
||||||
}
|
}
|
||||||
|
|
||||||
renameFile(tmp, link);
|
std::filesystem::rename(tmp, link);
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
@ -651,15 +651,10 @@ void copyFile(const Path & oldPath, const Path & newPath, bool andDelete)
|
||||||
return copy(fs::directory_entry(fs::path(oldPath)), fs::path(newPath), andDelete);
|
return copy(fs::directory_entry(fs::path(oldPath)), fs::path(newPath), andDelete);
|
||||||
}
|
}
|
||||||
|
|
||||||
void renameFile(const Path & oldName, const Path & newName)
|
|
||||||
{
|
|
||||||
fs::rename(oldName, newName);
|
|
||||||
}
|
|
||||||
|
|
||||||
void moveFile(const Path & oldName, const Path & newName)
|
void moveFile(const Path & oldName, const Path & newName)
|
||||||
{
|
{
|
||||||
try {
|
try {
|
||||||
renameFile(oldName, newName);
|
std::filesystem::rename(oldName, newName);
|
||||||
} catch (fs::filesystem_error & e) {
|
} catch (fs::filesystem_error & e) {
|
||||||
auto oldPath = fs::path(oldName);
|
auto oldPath = fs::path(oldName);
|
||||||
auto newPath = fs::path(newName);
|
auto newPath = fs::path(newName);
|
||||||
|
@ -674,7 +669,7 @@ void moveFile(const Path & oldName, const Path & newName)
|
||||||
fs::remove(newPath);
|
fs::remove(newPath);
|
||||||
warn("Can’t rename %s as %s, copying instead", oldName, newName);
|
warn("Can’t rename %s as %s, copying instead", oldName, newName);
|
||||||
copy(fs::directory_entry(oldPath), tempCopyTarget, true);
|
copy(fs::directory_entry(oldPath), tempCopyTarget, true);
|
||||||
renameFile(
|
std::filesystem::rename(
|
||||||
os_string_to_string(PathViewNG { tempCopyTarget }),
|
os_string_to_string(PathViewNG { tempCopyTarget }),
|
||||||
os_string_to_string(PathViewNG { newPath }));
|
os_string_to_string(PathViewNG { newPath }));
|
||||||
}
|
}
|
||||||
|
|
|
@ -177,8 +177,6 @@ void createSymlink(const Path & target, const Path & link);
|
||||||
*/
|
*/
|
||||||
void replaceSymlink(const Path & target, const Path & link);
|
void replaceSymlink(const Path & target, const Path & link);
|
||||||
|
|
||||||
void renameFile(const Path & src, const Path & dst);
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Similar to 'renameFile', but fallback to a copy+remove if `src` and `dst`
|
* Similar to 'renameFile', but fallback to a copy+remove if `src` and `dst`
|
||||||
* are on a different filesystem.
|
* are on a different filesystem.
|
||||||
|
|
Loading…
Reference in a new issue