diff --git a/node.go b/node.go index 67c7d9c..f2b1ebc 100644 --- a/node.go +++ b/node.go @@ -31,9 +31,10 @@ import ( ) type versionedNode struct { - path string - info os.FileInfo - ver *version + path string + info os.FileInfo + ver *version + shadow *versionedNode } type versionedNodeMap map[string]*versionedNode @@ -48,7 +49,7 @@ func newVersionedNode(path string, ver *version) (*versionedNode, error) { } func newVersionedNodeStat(path string, ver *version, info os.FileInfo) *versionedNode { - return &versionedNode{path, info, ver} + return &versionedNode{path, info, ver, nil} } func (this *versionedNode) rebasedPath() string { diff --git a/version.go b/version.go index 6b82af5..01ce6e3 100644 --- a/version.go +++ b/version.go @@ -114,6 +114,7 @@ func (this *version) scanDir(path string) (versionedNodeMap, error) { } for ownName, ownNode := range ownNodes { + ownNode.shadow = baseNodes[ownName] baseNodes[ownName] = ownNode }