aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Lu <chrislusf@users.noreply.github.com>2021-10-18 10:23:23 -0700
committerGitHub <noreply@github.com>2021-10-18 10:23:23 -0700
commit825d76622bc897fe31c71723a99b8b325a885e2d (patch)
treea0364c8a322880e7010e7a14add18bdf22dbb367
parent8cd7a0365b93dc3fcecfe252536c5024d19b508f (diff)
parentdd2cc1acaf37efa7a58ce9df7cdc2d756ecfd473 (diff)
downloadseaweedfs-825d76622bc897fe31c71723a99b8b325a885e2d.tar.xz
seaweedfs-825d76622bc897fe31c71723a99b8b325a885e2d.zip
Merge pull request #2388 from kmlebedev/fix_mime
fix mine detect
-rw-r--r--weed/s3api/s3api_object_handlers.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/weed/s3api/s3api_object_handlers.go b/weed/s3api/s3api_object_handlers.go
index 16f5f34f3..296501516 100644
--- a/weed/s3api/s3api_object_handlers.go
+++ b/weed/s3api/s3api_object_handlers.go
@@ -39,9 +39,12 @@ func init() {
func mimeDetect(r *http.Request, dataReader io.Reader) io.ReadCloser {
mimeBuffer := make([]byte, 512)
- dataReader.Read(mimeBuffer)
- r.Header.Set("Content-Type", http.DetectContentType(mimeBuffer))
- return io.NopCloser(io.MultiReader(bytes.NewReader(mimeBuffer), dataReader))
+ size, _ := dataReader.Read(mimeBuffer)
+ if size > 0 {
+ r.Header.Set("Content-Type", http.DetectContentType(mimeBuffer))
+ return io.NopCloser(io.MultiReader(bytes.NewReader(mimeBuffer[:size]), dataReader))
+ }
+ return io.NopCloser(dataReader)
}
func (s3a *S3ApiServer) PutObjectHandler(w http.ResponseWriter, r *http.Request) {