diff options
author | 2022-04-25 14:45:44 +0200 | |
---|---|---|
committer | 2022-04-25 14:45:44 +0200 | |
commit | eeb78bd141ea69a59c4361fac2cfe6fc36df59b3 (patch) | |
tree | a79204ae9a98151791e06f94060f95cd2f61c6d9 /internal/media/image.go | |
parent | [chore] Add two new test images for media processing (#424) (diff) | |
download | gotosocial-eeb78bd141ea69a59c4361fac2cfe6fc36df59b3.tar.xz |
[bugfix] Allow processing of .png files where checksum is not correct (#487)
* add png stripping code from google/wuffs
* experiment with stripping data from pngs
* add test images
* use StrippedPngDecode for pngs
* add StrippedPngDecode func
* update tests for (no)alphachannel pngs
* nolint on copied function
Diffstat (limited to 'internal/media/image.go')
-rw-r--r-- | internal/media/image.go | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/internal/media/image.go b/internal/media/image.go index 4f2db0e95..cb26ad539 100644 --- a/internal/media/image.go +++ b/internal/media/image.go @@ -74,7 +74,7 @@ func decodeImage(r io.Reader, contentType string) (*imageMeta, error) { case mimeImageJpeg: i, err = jpeg.Decode(r) case mimeImagePng: - i, err = png.Decode(r) + i, err = StrippedPngDecode(r) default: err = fmt.Errorf("content type %s not recognised", contentType) } @@ -117,7 +117,7 @@ func deriveThumbnail(r io.Reader, contentType string, createBlurhash bool) (*ima case mimeImageJpeg: i, err = jpeg.Decode(r) case mimeImagePng: - i, err = png.Decode(r) + i, err = StrippedPngDecode(r) case mimeImageGif: i, err = gif.Decode(r) default: @@ -175,7 +175,7 @@ func deriveStaticEmoji(r io.Reader, contentType string) (*imageMeta, error) { switch contentType { case mimeImagePng: - i, err = png.Decode(r) + i, err = StrippedPngDecode(r) if err != nil { return nil, err } |