about summary refs log tree commit diff
path: root/src/libstore/normalise.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstore/normalise.cc')
-rw-r--r--src/libstore/normalise.cc24
1 files changed, 5 insertions, 19 deletions
diff --git a/src/libstore/normalise.cc b/src/libstore/normalise.cc
index 937dbc7f9bac..29a6c339cb15 100644
--- a/src/libstore/normalise.cc
+++ b/src/libstore/normalise.cc
@@ -497,14 +497,8 @@ void NormalisationGoal::buildDone()
     /* Check the exit status. */
     if (!WIFEXITED(status) || WEXITSTATUS(status) != 0) {
         deleteTmpDir(false);
-        if (WIFEXITED(status))
-            throw Error(format("builder for `%1%' failed with exit code %2%")
-                % nePath % WEXITSTATUS(status));
-        else if (WIFSIGNALED(status))
-            throw Error(format("builder for `%1%' failed due to signal %2%")
-                % nePath % WTERMSIG(status));
-        else
-            throw Error(format("builder for `%1%' failed died abnormally") % nePath);
+        throw Error(format("builder for `%1%' %2%")
+            % nePath % statusToString(status));
     }
     
     deleteTmpDir(true);
@@ -1425,17 +1419,9 @@ void SubstitutionGoal::finished()
     debug(format("substitute for `%1%' finished") % storePath);
 
     /* Check the exit status. */
-    /* !!! cut & paste */
-    if (!WIFEXITED(status) || WEXITSTATUS(status) != 0) {
-        if (WIFEXITED(status))
-            throw Error(format("builder for `%1%' failed with exit code %2%")
-                % storePath % WEXITSTATUS(status));
-        else if (WIFSIGNALED(status))
-            throw Error(format("builder for `%1%' failed due to signal %2%")
-                % storePath % WTERMSIG(status));
-        else
-            throw Error(format("builder for `%1%' failed died abnormally") % storePath);
-    }
+    if (!WIFEXITED(status) || WEXITSTATUS(status) != 0)
+        throw Error(format("builder for `%1%' %2%")
+            % storePath % statusToString(status));
 
     if (!pathExists(storePath))
         throw Error(format("substitute did not produce path `%1%'") % storePath);