Skip to content

Commit

Permalink
Merge pull request #5936 from ipfs/fix/mfs-flush
Browse files Browse the repository at this point in the history
mfs: make sure to flush after mv and chcid
  • Loading branch information
Stebalien authored Jan 22, 2019
2 parents 74bf836 + e995397 commit 2c2d2e2
Showing 1 changed file with 13 additions and 7 deletions.
20 changes: 13 additions & 7 deletions core/commands/files.go
Original file line number Diff line number Diff line change
Expand Up @@ -636,6 +636,8 @@ Example:
return err
}

flush, _ := req.Options[filesFlushOptionName].(bool)

src, err := checkPath(req.Arguments[0])
if err != nil {
return err
Expand All @@ -645,7 +647,11 @@ Example:
return err
}

return mfs.Mv(nd.FilesRoot, src, dst)
err = mfs.Mv(nd.FilesRoot, src, dst)
if err == nil && flush {
err = mfs.FlushPath(nd.FilesRoot, "/")
}
return err
},
}

Expand Down Expand Up @@ -908,11 +914,15 @@ Change the cid version or hash function of the root node of a given path.
return err
}

return updatePath(nd.FilesRoot, path, prefix, flush)
err = updatePath(nd.FilesRoot, path, prefix)
if err == nil && flush {
err = mfs.FlushPath(nd.FilesRoot, path)
}
return err
},
}

func updatePath(rt *mfs.Root, pth string, builder cid.Builder, flush bool) error {
func updatePath(rt *mfs.Root, pth string, builder cid.Builder) error {
if builder == nil {
return nil
}
Expand All @@ -929,10 +939,6 @@ func updatePath(rt *mfs.Root, pth string, builder cid.Builder, flush bool) error
return fmt.Errorf("can only update directories")
}

if flush {
nd.Flush()
}

return nil
}

Expand Down

0 comments on commit 2c2d2e2

Please sign in to comment.