about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/libstore/store.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/libstore/store.cc b/src/libstore/store.cc
index 3c91c8e3849e..4e163605a49f 100644
--- a/src/libstore/store.cc
+++ b/src/libstore/store.cc
@@ -844,6 +844,9 @@ void verifyStore(bool checkContents)
                 if (referers.find(*i) == referers.end()) {
                     printMsg(lvlError, format("missing referer mapping from `%1%' to `%2%'")
                         % *j % *i);
+                    referers.insert(*i);
+                    nixDB.setStrings(txn, dbReferers, *j,
+                        Paths(referers.begin(), referers.end()));
                 }
                 if (isValid && validPaths.find(*j) == validPaths.end()) {
                     printMsg(lvlError, format("incomplete closure: `%1%' needs missing `%2%'")