diff --git a/src/libstore/build.cc b/src/libstore/build.cc
index ad450a916b964a6c6b937ca45ede6c54e492a19d..2e3875551d4fad43488b6870339bbc47b814d47c 100644
--- a/src/libstore/build.cc
+++ b/src/libstore/build.cc
@@ -1439,7 +1439,8 @@ void DerivationGoal::buildDone()
         outputLocks.unlock();
 
     } catch (BuildError & e) {
-        printMsg(lvlError, e.msg());
+        if (!hook)
+            printMsg(lvlError, e.msg());
         outputLocks.unlock();
         buildUser.release();