about summary refs log tree commit diff
path: root/third_party/nix/src/nix-store
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/nix/src/nix-store')
-rw-r--r--third_party/nix/src/nix-store/nix-store.cc10
1 files changed, 6 insertions, 4 deletions
diff --git a/third_party/nix/src/nix-store/nix-store.cc b/third_party/nix/src/nix-store/nix-store.cc
index 152d716641b6..a036fcec8bd8 100644
--- a/third_party/nix/src/nix-store/nix-store.cc
+++ b/third_party/nix/src/nix-store/nix-store.cc
@@ -16,6 +16,7 @@
 #include "libstore/worker-protocol.hh"
 #include "libutil/archive.hh"
 #include "libutil/monitor-fd.hh"
+#include "libutil/status.hh"
 #include "libutil/util.hh"
 #include "nix-store/dotgraph.hh"
 #include "nix-store/graphml.hh"
@@ -68,7 +69,7 @@ static PathSet realisePath(Path path, bool build = true) {
 
   if (isDerivation(p.first)) {
     if (build) {
-      store->buildPaths({path});
+      util::OkOrThrow(store->buildPaths({path}));
     }
     Derivation drv = store->derivationFromPath(p.first);
     rootNr++;
@@ -184,7 +185,8 @@ static void opRealise(Strings opFlags, Strings opArgs) {
   }
 
   /* Build all paths at the same time to exploit parallelism. */
-  store->buildPaths(PathSet(paths.begin(), paths.end()), buildMode);
+  util::OkOrThrow(
+      store->buildPaths(PathSet(paths.begin(), paths.end()), buildMode));
 
   if (!ignoreUnknown) {
     for (auto& i : paths) {
@@ -1002,7 +1004,7 @@ static void opServe(Strings opFlags, Strings opArgs) {
              does one path at a time. */
           if (!willSubstitute.empty()) {
             try {
-              store->buildPaths(willSubstitute);
+              util::OkOrThrow(store->buildPaths(willSubstitute));
             } catch (Error& e) {
               LOG(WARNING) << e.msg();
             }
@@ -1064,7 +1066,7 @@ static void opServe(Strings opFlags, Strings opArgs) {
 
         try {
           MonitorFdHup monitor(in.fd);
-          store->buildPaths(paths);
+          util::OkOrThrow(store->buildPaths(paths));
           out << 0;
         } catch (Error& e) {
           assert(e.status);