diff options
author | Harrison Healey <harrisonmhealey@gmail.com> | 2018-09-10 07:38:04 -0400 |
---|---|---|
committer | Martin Kraft <martinkraft@gmail.com> | 2018-09-10 07:38:04 -0400 |
commit | e39ab5c7dcfd6f16264b4a601aca7fa5a572dccf (patch) | |
tree | 99f5746add4fc4c915ab3a9d53a6b39e9b2ccbb4 /app/emoji.go | |
parent | 0027d998555d47f9a75a896d8c6c85a8b4645ad0 (diff) | |
download | chat-e39ab5c7dcfd6f16264b4a601aca7fa5a572dccf.tar.gz chat-e39ab5c7dcfd6f16264b4a601aca7fa5a572dccf.tar.bz2 chat-e39ab5c7dcfd6f16264b4a601aca7fa5a572dccf.zip |
MM-12007 Add max dimensions to emoji images (#9379)
Diffstat (limited to 'app/emoji.go')
-rw-r--r-- | app/emoji.go | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/app/emoji.go b/app/emoji.go index b07331e65..864dc31bf 100644 --- a/app/emoji.go +++ b/app/emoji.go @@ -23,9 +23,11 @@ import ( ) const ( - MaxEmojiFileSize = 1 << 20 // 1 MB - MaxEmojiWidth = 128 - MaxEmojiHeight = 128 + MaxEmojiFileSize = 1 << 20 // 1 MB + MaxEmojiWidth = 128 + MaxEmojiHeight = 128 + MaxEmojiOriginalWidth = 1028 + MaxEmojiOriginalHeight = 1028 ) func (a *App) CreateEmoji(sessionUserId string, emoji *model.Emoji, multiPartImageData *multipart.Form) (*model.Emoji, *model.AppError) { @@ -85,6 +87,11 @@ func (a *App) UploadEmojiImage(id string, imageData *multipart.FileHeader) *mode // make sure the file is an image and is within the required dimensions if config, _, err := image.DecodeConfig(bytes.NewReader(buf.Bytes())); err != nil { return model.NewAppError("uploadEmojiImage", "api.emoji.upload.image.app_error", nil, "", http.StatusBadRequest) + } else if config.Width > MaxEmojiOriginalWidth || config.Height > MaxEmojiOriginalHeight { + return model.NewAppError("uploadEmojiImage", "api.emoji.upload.large_image.too_large.app_error", map[string]interface{}{ + "MaxWidth": MaxEmojiOriginalWidth, + "MaxHeight": MaxEmojiOriginalHeight, + }, "", http.StatusBadRequest) } else if config.Width > MaxEmojiWidth || config.Height > MaxEmojiHeight { data := buf.Bytes() newbuf := bytes.NewBuffer(nil) |