]> Cypherpunks.ru repositories - goredo.git/blobdiff - dep.go
Empty target names must not be present in .rec
[goredo.git] / dep.go
diff --git a/dep.go b/dep.go
index 0add0a79c4329b7c6b701a8e0d880eea4c357b84..6644ac54695674cc8c8ad539a1e17ecadc37f7b5 100644 (file)
--- a/dep.go
+++ b/dep.go
@@ -206,6 +206,10 @@ func depRead(pth string) (*DepInfo, error) {
                        }
                        depInfo.ifcreates = append(depInfo.ifcreates, dep)
                case DepTypeIfchange:
+                       dep := m["Target"]
+                       if dep == "" {
+                               return nil, ErrBadRecFormat
+                       }
                        inode, err := inodeFromRec(m)
                        if err != nil {
                                log.Print(err)
@@ -213,7 +217,7 @@ func depRead(pth string) (*DepInfo, error) {
                        }
                        hsh := mustHexDecode(m["Hash"])
                        depInfo.ifchanges = append(depInfo.ifchanges, DepInfoIfchange{
-                               tgt: m["Target"], inode: inode, hash: hsh,
+                               tgt: dep, inode: inode, hash: hsh,
                        })
                case DepTypeStamp:
                        hsh := m["Hash"]