1
1
package cmdenv
2
2
3
3
import (
4
- "errors "
4
+ "strings "
5
5
6
- path "gx/ipfs/QmNYPETsdAu2uQ1k9q9S1jYEGURaLHV6cbYRSVFVRftpF8/go-path"
7
6
cmds "gx/ipfs/QmWGm4AbZEbnmdgVTza52MSNpEmBdFVqzmAysRbjrRyGbH/go-ipfs-cmds"
8
7
cidenc "gx/ipfs/QmdPQx9fvN5ExVwMhRmh7YpCQJzJrFhd1AjVBwJmRMFJeX/go-cidutil/cidenc"
9
8
cmdkit "gx/ipfs/Qmde5VP1qUkyQXKCfmEUA7bP64V2HAptbJ7phuPp7jXWwg/go-ipfs-cmdkit"
@@ -64,10 +63,7 @@ func CidBaseDefined(req *cmds.Request) bool {
64
63
// the base encoder is returned. If you don't care about the error
65
64
// condition, it is safe to ignore the error returned.
66
65
func CidEncoderFromPath (enc cidenc.Encoder , p string ) (cidenc.Encoder , error ) {
67
- v , err := extractCidString (p )
68
- if err != nil {
69
- return enc , err
70
- }
66
+ v := extractCidString (p )
71
67
if cidVer (v ) == 0 {
72
68
return cidenc.Encoder {Base : enc .Base , Upgrade : false }, nil
73
69
}
@@ -78,16 +74,12 @@ func CidEncoderFromPath(enc cidenc.Encoder, p string) (cidenc.Encoder, error) {
78
74
return cidenc.Encoder {Base : e , Upgrade : true }, nil
79
75
}
80
76
81
- func extractCidString (str string ) (string , error ) {
82
- p , err := path .ParsePath (str )
83
- if err != nil {
84
- return "" , err
85
- }
86
- segs := p .Segments ()
87
- if segs [0 ] == "ipfs" || segs [0 ] == "ipld" {
88
- return segs [1 ], nil
77
+ func extractCidString (str string ) string {
78
+ parts := strings .Split (str , "/" )
79
+ if len (parts ) > 2 && (parts [1 ] == "ipfs" || parts [1 ] == "ipld" ) {
80
+ return parts [2 ]
89
81
}
90
- return "" , errors . New ( "no CID found" )
82
+ return str
91
83
}
92
84
93
85
func cidVer (v string ) int {
0 commit comments