1
1
Fork 0
mirror of https://github.com/NixOS/nix.git synced 2025-11-12 05:26:02 +01:00

Create a wrapper around stdlib’s rename

Directly takes some c++ strings, and gently throws an exception on error
(rather than having to inline this logic everywhere)
This commit is contained in:
Théophane Hufschmitt 2022-03-17 15:28:46 +01:00 committed by Théophane Hufschmitt
parent 8119390abc
commit c2de0a232c
9 changed files with 22 additions and 22 deletions

View file

@ -22,8 +22,7 @@ void builtinUnpackChannel(const BasicDerivation & drv)
auto entries = readDirectory(out);
if (entries.size() != 1)
throw Error("channel tarball '%s' contains more than one file", src);
if (rename((out + "/" + entries[0].name).c_str(), (out + "/" + channelName).c_str()) == -1)
throw SysError("renaming channel directory");
moveFile((out + "/" + entries[0].name), (out + "/" + channelName));
}
}