From bb449bff19852b1caf334a607a081b16490fe11c Mon Sep 17 00:00:00 2001 From: Giuseppe Lo Presti Date: Tue, 7 Nov 2023 18:01:53 +0100 Subject: [PATCH] Fixed registration of custom extensions in the mime registry --- changelog/unreleased/mimes-fix.md | 6 ++++++ pkg/mime/mime.go | 6 ++---- 2 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 changelog/unreleased/mimes-fix.md diff --git a/changelog/unreleased/mimes-fix.md b/changelog/unreleased/mimes-fix.md new file mode 100644 index 0000000000..0aafe96b1f --- /dev/null +++ b/changelog/unreleased/mimes-fix.md @@ -0,0 +1,6 @@ +Bugfix: fixed registration of custom extensions in the mime registry + +This PR ensures custom extensions/mime-types are registered by trimming +any eventual leading '.' from the extension. + +https://github.com/cs3org/reva/pull/4319 diff --git a/pkg/mime/mime.go b/pkg/mime/mime.go index 24e2a75267..4fe3cbbfb4 100644 --- a/pkg/mime/mime.go +++ b/pkg/mime/mime.go @@ -38,7 +38,7 @@ func init() { // a mime type with the given extension. // TODO(labkode): check that we do not override mime type mappings? func RegisterMime(ext, mime string) { - mimes.Store(ext, mime) + mimes.Store(strings.TrimPrefix(ext, "."), mime) } // Detect returns the mimetype associated with the given filename. @@ -47,9 +47,7 @@ func Detect(isDir bool, fn string) string { return defaultMimeDir } - ext := path.Ext(fn) - ext = strings.TrimPrefix(ext, ".") - + ext := strings.TrimPrefix(path.Ext(fn), ".") mimeType := getCustomMime(ext) if mimeType == "" {