@cryptotaxi247 / kubo / commits / cb1ba70a9

fix: handle new ProtoNode errors

Rod Vagg committed Sep 30, 2022 at 14:50 UTC cb1ba70a9b49fcb06c42c05179c8bba5c0da4dc4
5 files changed +22 -6
core/commands/files.go
+4 -1
@@ -1245,7 +1245,10 @@ func getFileHandle(r *mfs.Root, path string, create bool, builder cid.Builder) (
1245 }
1246
1247 nd := dag.NodeWithData(ft.FilePBData(nil, 0))
1248 - nd.SetCidBuilder(builder)
1248 + err = nd.SetCidBuilder(builder)
1249 + if err != nil {
1250 + return nil, err
1251 + }
1252 err = pdir.AddChild(fname, nd)
1253 if err != nil {
1254 return nil, err
core/commands/object/object.go
+3 -1
@@ -537,7 +537,9 @@ func deserializeNode(nd *Node, dataFieldEncoding string) (*dag.ProtoNode, error)
537 Cid: c,
538 }
539 }
540 - dagnode.SetLinks(links)
540 + if err := dagnode.SetLinks(links); err != nil {
541 + return nil, err
542 + }
543
544 return dagnode, nil
545 }
core/coreapi/object.go
+3 -1
@@ -405,7 +405,9 @@ func deserializeNode(nd *Node, dataFieldEncoding string) (*dag.ProtoNode, error)
405 Cid: c,
406 }
407 }
408 - dagnode.SetLinks(links)
408 + if err := dagnode.SetLinks(links); err != nil {
409 + return nil, err
410 + }
411
412 return dagnode, nil
413 }
core/coreapi/unixfs.go
+4 -1
@@ -176,7 +176,10 @@ func (api *UnixfsAPI) Add(ctx context.Context, files files.Node, opts ...options
176 md := dagtest.Mock()
177 emptyDirNode := ft.EmptyDirNode()
178 // Use the same prefix for the "empty" MFS root as for the file adder.
179 - emptyDirNode.SetCidBuilder(fileAdder.CidBuilder)
179 + err := emptyDirNode.SetCidBuilder(fileAdder.CidBuilder)
180 + if err != nil {
181 + return nil, err
182 + }
183 mr, err := mfs.NewRoot(ctx, md, emptyDirNode, nil)
184 if err != nil {
185 return nil, err
core/coreunix/add.go
+8 -2
@@ -87,7 +87,10 @@ func (adder *Adder) mfsRoot() (*mfs.Root, error) {
87 return adder.mroot, nil
88 }
89 rnode := unixfs.EmptyDirNode()
90 - rnode.SetCidBuilder(adder.CidBuilder)
90 + err := rnode.SetCidBuilder(adder.CidBuilder)
91 + if err != nil {
92 + return nil, err
93 + }
94 mr, err := mfs.NewRoot(adder.ctx, adder.dagService, rnode, nil)
95 if err != nil {
96 return nil, err
@@ -384,7 +387,10 @@ func (adder *Adder) addSymlink(path string, l *files.Symlink) error {
387 }
388
389 dagnode := dag.NodeWithData(sdata)
387 - dagnode.SetCidBuilder(adder.CidBuilder)
390 + err = dagnode.SetCidBuilder(adder.CidBuilder)
391 + if err != nil {
392 + return err
393 + }
394 err = adder.dagService.Add(adder.ctx, dagnode)
395 if err != nil {
396 return err