about summary refs log tree commit diff
path: root/src/libstore/nar-info.cc
diff options
context:
space:
mode:
authorEelco Dolstra <edolstra@gmail.com>2017-03-28T11·08+0200
committerEelco Dolstra <edolstra@gmail.com>2017-03-28T11·08+0200
commitc60715e937e3773bbb8a114fc9b9c6577f8c5cb5 (patch)
tree5c41d42884d12d3f22972bf7e30311e916f36d52 /src/libstore/nar-info.cc
parent023217f07c1acd75403bfea88bc38eb48905dc4e (diff)
Ignore broken "Deriver: unknown-deriver" fields in .narinfo
These were generated by a legacy tool.
Diffstat (limited to 'src/libstore/nar-info.cc')
-rw-r--r--src/libstore/nar-info.cc8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/libstore/nar-info.cc b/src/libstore/nar-info.cc
index 201cac671a55..d1042c6de25e 100644
--- a/src/libstore/nar-info.cc
+++ b/src/libstore/nar-info.cc
@@ -59,9 +59,11 @@ NarInfo::NarInfo(const Store & store, const std::string & s, const std::string &
             }
         }
         else if (name == "Deriver") {
-            auto p = store.storeDir + "/" + value;
-            if (!store.isStorePath(p)) corrupt();
-            deriver = p;
+            if (value != "unknown-deriver") {
+                auto p = store.storeDir + "/" + value;
+                if (!store.isStorePath(p)) corrupt();
+                deriver = p;
+            }
         }
         else if (name == "System")
             system = value;