mirror of https://github.com/knative/func.git
feat: support windows paths in embedded templates FS
This commit is contained in:
parent
acc56b0900
commit
c2b216857b
|
@ -5,6 +5,7 @@ import (
|
||||||
"bytes"
|
"bytes"
|
||||||
"io"
|
"io"
|
||||||
"io/fs"
|
"io/fs"
|
||||||
|
"os"
|
||||||
"path"
|
"path"
|
||||||
"sort"
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
|
@ -71,7 +72,7 @@ func (fsys FS) Open(name string) (fs.File, error) {
|
||||||
if name == "." {
|
if name == "." {
|
||||||
elem = "."
|
elem = "."
|
||||||
for fname, f := range fsys {
|
for fname, f := range fsys {
|
||||||
i := strings.Index(fname, "/")
|
i := strings.Index(fname, string(os.PathSeparator))
|
||||||
if i < 0 {
|
if i < 0 {
|
||||||
list = append(list, fileInfo{fname, f})
|
list = append(list, fileInfo{fname, f})
|
||||||
} else {
|
} else {
|
||||||
|
@ -79,12 +80,12 @@ func (fsys FS) Open(name string) (fs.File, error) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
elem = name[strings.LastIndex(name, "/")+1:]
|
elem = name[strings.LastIndex(name, string(os.PathSeparator))+1:]
|
||||||
prefix := name + "/"
|
prefix := name + string(os.PathSeparator)
|
||||||
for fname, f := range fsys {
|
for fname, f := range fsys {
|
||||||
if strings.HasPrefix(fname, prefix) {
|
if strings.HasPrefix(fname, prefix) {
|
||||||
felem := fname[len(prefix):]
|
felem := fname[len(prefix):]
|
||||||
i := strings.Index(felem, "/")
|
i := strings.Index(felem, string(os.PathSeparator))
|
||||||
if i < 0 {
|
if i < 0 {
|
||||||
list = append(list, fileInfo{felem, f})
|
list = append(list, fileInfo{felem, f})
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in New Issue