diff options
Diffstat (limited to 'src/libstore')
-rw-r--r-- | src/libstore/gc.cc | 5 | ||||
-rw-r--r-- | src/libstore/local-store.cc | 5 | ||||
-rw-r--r-- | src/libstore/store-api.cc | 14 |
3 files changed, 4 insertions, 20 deletions
diff --git a/src/libstore/gc.cc b/src/libstore/gc.cc index 05966ad4b076..3e4150d89811 100644 --- a/src/libstore/gc.cc +++ b/src/libstore/gc.cc @@ -92,10 +92,7 @@ Path addPermRoot(const Path & _storePath, const Path & _gcRoot, Path realRoot = canonPath((format("%1%/%2%/auto/%3%") % nixStateDir % gcRootsDir % hash).str()); - { - SwitchToOriginalUser sw; - createSymlink(gcRoot, storePath, true); - } + createSymlink(gcRoot, storePath, true); createSymlink(realRoot, gcRoot, false); } diff --git a/src/libstore/local-store.cc b/src/libstore/local-store.cc index 2f2a1b436635..0b8900f2501b 100644 --- a/src/libstore/local-store.cc +++ b/src/libstore/local-store.cc @@ -207,10 +207,7 @@ void copyPath(const Path & src, const Path & dst) files. */ CopySink sink; - { - SwitchToOriginalUser sw; - dumpPath(src, sink); - } + dumpPath(src, sink); CopySource source(sink.s); restorePath(dst, source); diff --git a/src/libstore/store-api.cc b/src/libstore/store-api.cc index a560b3f55b8f..fb86fc6abbb7 100644 --- a/src/libstore/store-api.cc +++ b/src/libstore/store-api.cc @@ -96,25 +96,15 @@ Path makeFixedOutputPath(bool recursive, std::pair<Path, Hash> computeStorePathForPath(const Path & srcPath, bool fixed, bool recursive, string hashAlgo) { - Hash h(htSHA256); - { - SwitchToOriginalUser sw; - h = hashPath(htSHA256, srcPath); - } + Hash h = hashPath(htSHA256, srcPath); string baseName = baseNameOf(srcPath); Path dstPath; if (fixed) { - HashType ht(parseHashType(hashAlgo)); - Hash h2(ht); - { - SwitchToOriginalUser sw; - h2 = recursive ? hashPath(ht, srcPath) : hashFile(ht, srcPath); - } - + Hash h2 = recursive ? hashPath(ht, srcPath) : hashFile(ht, srcPath); dstPath = makeFixedOutputPath(recursive, hashAlgo, h2, baseName); } |