From 18baef41aa540ed10209cebca3700a578b98f460 Mon Sep 17 00:00:00 2001
From: Travis Ralston <travpc@gmail.com>
Date: Sun, 3 Feb 2019 14:48:52 -0700
Subject: [PATCH] Exclude charset from content type matches

Fixes https://github.com/turt2live/matrix-media-repo/issues/132
---
 .../preview_controller/previewers/calculated_previewer.go     | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/github.com/turt2live/matrix-media-repo/controllers/preview_controller/previewers/calculated_previewer.go b/src/github.com/turt2live/matrix-media-repo/controllers/preview_controller/previewers/calculated_previewer.go
index 02194661..18a62904 100644
--- a/src/github.com/turt2live/matrix-media-repo/controllers/preview_controller/previewers/calculated_previewer.go
+++ b/src/github.com/turt2live/matrix-media-repo/controllers/preview_controller/previewers/calculated_previewer.go
@@ -8,6 +8,7 @@ import (
 	"mime"
 	"net/http"
 	"strconv"
+	"strings"
 	"time"
 
 	"github.com/prometheus/client_golang/prometheus"
@@ -97,6 +98,9 @@ func downloadFileContent(urlStr string, log *logrus.Entry) (*PreviewImage, error
 	}
 
 	contentType := resp.Header.Get("Content-Type")
+	if strings.Contains(contentType, ";") {
+		contentType = strings.Split(contentType, ";")[0]
+	}
 	if len(config.Get().UrlPreviews.FilePreviewTypes) > 0 {
 		for _, allowedType := range config.Get().UrlPreviews.FilePreviewTypes {
 			if !glob.Glob(allowedType, contentType) {
-- 
GitLab