1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-09-10 09:52:20 +08:00

dagmodifier: Don't lose pin if old and new key happen to be equal

License: MIT
Signed-off-by: Jeromy <jeromyj@gmail.com>
This commit is contained in:
Tommi Virtanen
2015-06-08 21:43:11 -07:00
committed by Jeromy
parent 7a66a7dc9f
commit b24de97b04

View File

@ -209,9 +209,10 @@ func (dm *DagModifier) Sync() error {
dm.curNode = nd
}
// Finalize correct pinning, and flush pinner
dm.mp.PinWithMode(thisk, pin.Recursive)
// Finalize correct pinning, and flush pinner.
// Be careful about the order, as curk might equal thisk.
dm.mp.RemovePinWithMode(curk, pin.Recursive)
dm.mp.PinWithMode(thisk, pin.Recursive)
err = dm.mp.Flush()
if err != nil {
return err