Add fs separator

This commit is contained in:
Harshavardhana
2015-10-17 12:01:19 -07:00
parent c2859c1f7d
commit 1256ca86d0
4 changed files with 14 additions and 11 deletions

View File

@@ -118,9 +118,9 @@ func getMetadata(rootPath, bucket, object string) (ObjectMetadata, *probe.Error)
// in a static manner so that we can send a proper 'ObjectNotFound' reply back upon os.Stat()
var objectPath string
if runtime.GOOS == "windows" {
objectPath = rootPath + "\\" + bucket + "\\" + object
objectPath = rootPath + string(os.PathSeparator) + bucket + string(os.PathSeparator) + object
} else {
objectPath = rootPath + "/" + bucket + "/" + object
objectPath = rootPath + string(os.PathSeparator) + bucket + string(os.PathSeparator) + object
}
stat, err := os.Stat(objectPath)
if err != nil {
@@ -275,9 +275,9 @@ func (fs API) DeleteObject(bucket, object string) *probe.Error {
// in a static manner so that we can send a proper 'ObjectNotFound' reply back upon os.Stat()
var objectPath string
if runtime.GOOS == "windows" {
objectPath = fs.path + "\\" + bucket + "\\" + object
objectPath = fs.path + string(os.PathSeparator) + bucket + string(os.PathSeparator) + object
} else {
objectPath = fs.path + "/" + bucket + "/" + object
objectPath = fs.path + string(os.PathSeparator) + bucket + string(os.PathSeparator) + object
}
_, err := os.Stat(objectPath)

View File

@@ -260,7 +260,7 @@ func (fs API) ListObjects(bucket string, resources BucketResourcesMetadata) ([]O
/// automatically treat "/" delimiter as "\\" delimiter on windows due to its path constraints.
if resources.Delimiter == "/" {
if runtime.GOOS == "windows" {
resources.Delimiter = "\\"
resources.Delimiter = string(os.PathSeparator)
}
}
@@ -344,11 +344,11 @@ func (fs API) ListObjects(bucket string, resources BucketResourcesMetadata) ([]O
// Split the root prefix from the incoming file pointer
realFp := ""
if runtime.GOOS == "windows" {
if splits := strings.Split(fp, p.root+"\\"); len(splits) > 1 {
if splits := strings.Split(fp, (p.root + string(os.PathSeparator))); len(splits) > 1 {
realFp = splits[1]
}
} else {
if splits := strings.Split(fp, p.root+"/"); len(splits) > 1 {
if splits := strings.Split(fp, (p.root + string(os.PathSeparator))); len(splits) > 1 {
realFp = splits[1]
}
}
@@ -367,11 +367,11 @@ func (fs API) ListObjects(bucket string, resources BucketResourcesMetadata) ([]O
if resources.Marker != "" {
if realFp != "" {
if runtime.GOOS == "windows" {
if realFp < strings.Split(resources.Marker, "\\")[0] {
if realFp < strings.Split(resources.Marker, string(os.PathSeparator))[0] {
return ErrSkipDir
}
} else {
if realFp < strings.Split(resources.Marker, "/")[0] {
if realFp < strings.Split(resources.Marker, string(os.PathSeparator))[0] {
return ErrSkipDir
}
}