1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-06-24 05:59:55 +08:00

Merge pull request #5505 from overbool/fix/issue-#5217

fix(unixfs): issue #5217 (Avoid use of `pb.Data`)
This commit is contained in:
Steven Allen
2018-09-24 07:36:43 +00:00
committed by GitHub
3 changed files with 12 additions and 12 deletions

View File

@ -223,25 +223,25 @@ func statNode(nd ipld.Node) (*statOutput, error) {
switch n := nd.(type) {
case *dag.ProtoNode:
d, err := ft.FromBytes(n.Data())
d, err := ft.FSNodeFromBytes(n.Data())
if err != nil {
return nil, err
}
var ndtype string
switch d.GetType() {
switch d.Type() {
case ft.TDirectory, ft.THAMTShard:
ndtype = "directory"
case ft.TFile, ft.TMetadata, ft.TRaw:
ndtype = "file"
default:
return nil, fmt.Errorf("unrecognized node type: %s", d.GetType())
return nil, fmt.Errorf("unrecognized node type: %s", d.Type())
}
return &statOutput{
Hash: c.String(),
Blocks: len(nd.Links()),
Size: d.GetFilesize(),
Size: d.FileSize(),
CumulativeSize: cumulsize,
Type: ndtype,
}, nil

View File

@ -150,12 +150,12 @@ The JSON output contains type information.
}
if pn, ok := linkNode.(*merkledag.ProtoNode); ok {
d, err := unixfs.FromBytes(pn.Data())
d, err := unixfs.FSNodeFromBytes(pn.Data())
if err != nil {
res.SetError(err, cmdkit.ErrNormal)
return
}
t = d.GetType()
t = d.Type()
}
}
output[i].Links[j] = LsLink{

View File

@ -120,18 +120,18 @@ possible, please use 'ipfs ls' instead.
return
}
unixFSNode, err := unixfs.FromBytes(ndpb.Data())
unixFSNode, err := unixfs.FSNodeFromBytes(ndpb.Data())
if err != nil {
res.SetError(err, cmdkit.ErrNormal)
return
}
t := unixFSNode.GetType()
t := unixFSNode.Type()
output.Objects[hash] = &LsObject{
Hash: c.String(),
Type: t.String(),
Size: unixFSNode.GetFilesize(),
Size: unixFSNode.FileSize(),
}
switch t {
@ -156,19 +156,19 @@ possible, please use 'ipfs ls' instead.
return
}
d, err := unixfs.FromBytes(lnpb.Data())
d, err := unixfs.FSNodeFromBytes(lnpb.Data())
if err != nil {
res.SetError(err, cmdkit.ErrNormal)
return
}
t := d.GetType()
t := d.Type()
lsLink := LsLink{
Name: link.Name,
Hash: link.Cid.String(),
Type: t.String(),
}
if t == unixfspb.Data_File {
lsLink.Size = d.GetFilesize()
lsLink.Size = d.FileSize()
} else {
lsLink.Size = link.Size
}