From a8217f2642fa336f79154a485e090f3cbe79652c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Wed, 12 Mar 2025 17:49:45 +0100 Subject: [PATCH] use createDirs consistently everywhere --- src/libstore/builtins/unpack-channel.cc | 6 +----- src/libutil/tarfile.cc | 4 ++-- src/nix/flake.cc | 2 +- 3 files changed, 4 insertions(+), 8 deletions(-) diff --git a/src/libstore/builtins/unpack-channel.cc b/src/libstore/builtins/unpack-channel.cc index a6369ee1c..43fbb62cd 100644 --- a/src/libstore/builtins/unpack-channel.cc +++ b/src/libstore/builtins/unpack-channel.cc @@ -23,11 +23,7 @@ void builtinUnpackChannel( throw Error("channelName is not allowed to contain filesystem separators, got %1%", channelName); } - try { - fs::create_directories(out); - } catch (fs::filesystem_error &) { - throw SysError("creating directory '%1%'", out.string()); - } + createDirs(out); unpackTarfile(src, out); diff --git a/src/libutil/tarfile.cc b/src/libutil/tarfile.cc index e412930bb..9e54c9be2 100644 --- a/src/libutil/tarfile.cc +++ b/src/libutil/tarfile.cc @@ -166,7 +166,7 @@ void unpackTarfile(Source & source, const fs::path & destDir) { auto archive = TarArchive(source); - fs::create_directories(destDir); + createDirs(destDir); extract_archive(archive, destDir); } @@ -174,7 +174,7 @@ void unpackTarfile(const fs::path & tarFile, const fs::path & destDir) { auto archive = TarArchive(tarFile); - fs::create_directories(destDir); + createDirs(destDir); extract_archive(archive, destDir); } diff --git a/src/nix/flake.cc b/src/nix/flake.cc index 2eddfdbbb..7f0d36e02 100644 --- a/src/nix/flake.cc +++ b/src/nix/flake.cc @@ -905,7 +905,7 @@ struct CmdFlakeInitCommon : virtual Args, EvalCommand std::function copyDir; copyDir = [&](const SourcePath & from, const fs::path & to) { - fs::create_directories(to); + createDirs(to); for (auto & [name, entry] : from.readDirectory()) { checkInterrupt();