From 6d90fe35caa309c2206790324efead2812103ef7 Mon Sep 17 00:00:00 2001 From: Jeromy Date: Tue, 19 Apr 2016 15:57:17 -0700 Subject: [PATCH] fix resolve call in object diff License: MIT Signed-off-by: Jeromy --- core/commands/object/diff.go | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/core/commands/object/diff.go b/core/commands/object/diff.go index 75dadc341..06fd1fab3 100644 --- a/core/commands/object/diff.go +++ b/core/commands/object/diff.go @@ -6,10 +6,15 @@ import ( "io" cmds "github.com/ipfs/go-ipfs/commands" + core "github.com/ipfs/go-ipfs/core" dagutils "github.com/ipfs/go-ipfs/merkledag/utils" path "github.com/ipfs/go-ipfs/path" ) +type Changes struct { + Changes []*dagutils.Change +} + var ObjectDiffCmd = &cmds.Command{ Helptext: cmds.HelpText{ Tagline: "takes a diff of the two given objects", @@ -68,13 +73,13 @@ Example: ctx := req.Context() - obj_a, err := node.Resolver.ResolvePath(ctx, pa) + obj_a, err := core.Resolve(ctx, node, pa) if err != nil { res.SetError(err, cmds.ErrNormal) return } - obj_b, err := node.Resolver.ResolvePath(ctx, pb) + obj_b, err := core.Resolve(ctx, node, pb) if err != nil { res.SetError(err, cmds.ErrNormal) return @@ -86,15 +91,15 @@ Example: return } - res.SetOutput(changes) + res.SetOutput(&Changes{changes}) }, - Type: []*dagutils.Change{}, + Type: Changes{}, Marshalers: cmds.MarshalerMap{ cmds.Text: func(res cmds.Response) (io.Reader, error) { verbose, _, _ := res.Request().Option("v").Bool() - changes := res.Output().([]*dagutils.Change) + changes := res.Output().(*Changes) buf := new(bytes.Buffer) - for _, change := range changes { + for _, change := range changes.Changes { if verbose { switch change.Type { case dagutils.Add: