mirror of
https://github.com/ipfs/kubo.git
synced 2025-10-09 06:46:50 +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:
@ -223,25 +223,25 @@ func statNode(nd ipld.Node) (*statOutput, error) {
|
|||||||
|
|
||||||
switch n := nd.(type) {
|
switch n := nd.(type) {
|
||||||
case *dag.ProtoNode:
|
case *dag.ProtoNode:
|
||||||
d, err := ft.FromBytes(n.Data())
|
d, err := ft.FSNodeFromBytes(n.Data())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
var ndtype string
|
var ndtype string
|
||||||
switch d.GetType() {
|
switch d.Type() {
|
||||||
case ft.TDirectory, ft.THAMTShard:
|
case ft.TDirectory, ft.THAMTShard:
|
||||||
ndtype = "directory"
|
ndtype = "directory"
|
||||||
case ft.TFile, ft.TMetadata, ft.TRaw:
|
case ft.TFile, ft.TMetadata, ft.TRaw:
|
||||||
ndtype = "file"
|
ndtype = "file"
|
||||||
default:
|
default:
|
||||||
return nil, fmt.Errorf("unrecognized node type: %s", d.GetType())
|
return nil, fmt.Errorf("unrecognized node type: %s", d.Type())
|
||||||
}
|
}
|
||||||
|
|
||||||
return &statOutput{
|
return &statOutput{
|
||||||
Hash: c.String(),
|
Hash: c.String(),
|
||||||
Blocks: len(nd.Links()),
|
Blocks: len(nd.Links()),
|
||||||
Size: d.GetFilesize(),
|
Size: d.FileSize(),
|
||||||
CumulativeSize: cumulsize,
|
CumulativeSize: cumulsize,
|
||||||
Type: ndtype,
|
Type: ndtype,
|
||||||
}, nil
|
}, nil
|
||||||
|
@ -150,12 +150,12 @@ The JSON output contains type information.
|
|||||||
}
|
}
|
||||||
|
|
||||||
if pn, ok := linkNode.(*merkledag.ProtoNode); ok {
|
if pn, ok := linkNode.(*merkledag.ProtoNode); ok {
|
||||||
d, err := unixfs.FromBytes(pn.Data())
|
d, err := unixfs.FSNodeFromBytes(pn.Data())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
res.SetError(err, cmdkit.ErrNormal)
|
res.SetError(err, cmdkit.ErrNormal)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
t = d.GetType()
|
t = d.Type()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
output[i].Links[j] = LsLink{
|
output[i].Links[j] = LsLink{
|
||||||
|
@ -120,18 +120,18 @@ possible, please use 'ipfs ls' instead.
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
unixFSNode, err := unixfs.FromBytes(ndpb.Data())
|
unixFSNode, err := unixfs.FSNodeFromBytes(ndpb.Data())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
res.SetError(err, cmdkit.ErrNormal)
|
res.SetError(err, cmdkit.ErrNormal)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
t := unixFSNode.GetType()
|
t := unixFSNode.Type()
|
||||||
|
|
||||||
output.Objects[hash] = &LsObject{
|
output.Objects[hash] = &LsObject{
|
||||||
Hash: c.String(),
|
Hash: c.String(),
|
||||||
Type: t.String(),
|
Type: t.String(),
|
||||||
Size: unixFSNode.GetFilesize(),
|
Size: unixFSNode.FileSize(),
|
||||||
}
|
}
|
||||||
|
|
||||||
switch t {
|
switch t {
|
||||||
@ -156,19 +156,19 @@ possible, please use 'ipfs ls' instead.
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
d, err := unixfs.FromBytes(lnpb.Data())
|
d, err := unixfs.FSNodeFromBytes(lnpb.Data())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
res.SetError(err, cmdkit.ErrNormal)
|
res.SetError(err, cmdkit.ErrNormal)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
t := d.GetType()
|
t := d.Type()
|
||||||
lsLink := LsLink{
|
lsLink := LsLink{
|
||||||
Name: link.Name,
|
Name: link.Name,
|
||||||
Hash: link.Cid.String(),
|
Hash: link.Cid.String(),
|
||||||
Type: t.String(),
|
Type: t.String(),
|
||||||
}
|
}
|
||||||
if t == unixfspb.Data_File {
|
if t == unixfspb.Data_File {
|
||||||
lsLink.Size = d.GetFilesize()
|
lsLink.Size = d.FileSize()
|
||||||
} else {
|
} else {
|
||||||
lsLink.Size = link.Size
|
lsLink.Size = link.Size
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user