diff --git a/core/artwork/artwork_internal_test.go b/core/artwork/artwork_internal_test.go index 5d2371f5c..c29de7f6f 100644 --- a/core/artwork/artwork_internal_test.go +++ b/core/artwork/artwork_internal_test.go @@ -216,12 +216,9 @@ var _ = Describe("Artwork", func() { r, _, err := aw.Get(context.Background(), alMultipleCovers.CoverArtID(), 15) Expect(err).ToNot(HaveOccurred()) - br, format, err := asImageReader(r) - Expect(format).To(Equal("image/png")) - Expect(err).ToNot(HaveOccurred()) - - img, _, err := image.Decode(br) + img, format, err := image.Decode(r) Expect(err).ToNot(HaveOccurred()) + Expect(format).To(Equal("png")) Expect(img.Bounds().Size().X).To(Equal(15)) Expect(img.Bounds().Size().Y).To(Equal(15)) }) @@ -230,11 +227,8 @@ var _ = Describe("Artwork", func() { r, _, err := aw.Get(context.Background(), alMultipleCovers.CoverArtID(), 200) Expect(err).ToNot(HaveOccurred()) - br, format, err := asImageReader(r) - Expect(format).To(Equal("image/jpeg")) - Expect(err).ToNot(HaveOccurred()) - - img, _, err := image.Decode(br) + img, format, err := image.Decode(r) + Expect(format).To(Equal("jpeg")) Expect(err).ToNot(HaveOccurred()) Expect(img.Bounds().Size().X).To(Equal(200)) Expect(img.Bounds().Size().Y).To(Equal(200)) diff --git a/core/artwork/reader_resized.go b/core/artwork/reader_resized.go index 9495abbb4..bc6820b27 100644 --- a/core/artwork/reader_resized.go +++ b/core/artwork/reader_resized.go @@ -1,7 +1,6 @@ package artwork import ( - "bufio" "bytes" "context" "fmt" @@ -9,7 +8,6 @@ import ( "image/jpeg" "image/png" "io" - "net/http" "time" "github.com/disintegration/imaging" @@ -83,24 +81,8 @@ func (a *resizedArtworkReader) Reader(ctx context.Context) (io.ReadCloser, strin return io.NopCloser(resized), fmt.Sprintf("%s@%d", a.artID, a.size), nil } -func asImageReader(r io.Reader) (io.Reader, string, error) { - br := bufio.NewReader(r) - buf, err := br.Peek(512) - if err != nil && err != io.EOF { - return nil, "", err - } - - typ := http.DetectContentType(buf) - return br, typ, nil -} - func resizeImage(reader io.Reader, size int) (io.Reader, int, error) { - r, format, err := asImageReader(reader) - if err != nil { - return nil, 0, err - } - - original, _, err := image.Decode(r) + original, format, err := image.Decode(reader) if err != nil { return nil, 0, err } @@ -116,7 +98,7 @@ func resizeImage(reader io.Reader, size int) (io.Reader, int, error) { resized := imaging.Fit(original, size, size, imaging.Lanczos) buf := new(bytes.Buffer) - if format == "image/png" { + if format == "png" { err = png.Encode(buf, resized) } else { err = jpeg.Encode(buf, resized, &jpeg.Options{Quality: conf.Server.CoverJpegQuality})