aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--weed/storage/needle_parse_multipart.go8
1 files changed, 5 insertions, 3 deletions
diff --git a/weed/storage/needle_parse_multipart.go b/weed/storage/needle_parse_multipart.go
index e8d57ee38..3dba81fcf 100644
--- a/weed/storage/needle_parse_multipart.go
+++ b/weed/storage/needle_parse_multipart.go
@@ -88,10 +88,12 @@ func parseMultipart(r *http.Request) (
}
isGzipped = true
} else if operation.IsGzippable(ext, mtype, data) {
- if data, e = operation.GzipData(data); e != nil {
- return
+ if compressedData, err := operation.GzipData(data); err == nil {
+ if len(data) > len(compressedData) {
+ data = compressedData
+ isGzipped = true
+ }
}
- isGzipped = true
}
}