From: Nigel Tao Date: Wed, 7 Nov 2012 23:36:29 +0000 (+1100) Subject: image/jpeg: handle fill bytes. X-Git-Tag: go1.1rc2~1928 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=64b3e590c00b9c1e532dd0014b16174c9397664c;p=gostls13.git image/jpeg: handle fill bytes. Fixes #4337. R=r, minux.ma CC=golang-dev https://golang.org/cl/6814098 --- diff --git a/src/pkg/image/jpeg/reader.go b/src/pkg/image/jpeg/reader.go index 5b1e61774e..24dd65defc 100644 --- a/src/pkg/image/jpeg/reader.go +++ b/src/pkg/image/jpeg/reader.go @@ -236,6 +236,14 @@ func (d *decoder) decode(r io.Reader, configOnly bool) (image.Image, error) { return nil, FormatError("missing 0xff marker start") } marker := d.tmp[1] + for marker == 0xff { + // Section B.1.1.2 says, "Any marker may optionally be preceded by any + // number of fill bytes, which are bytes assigned code X'FF'". + marker, err = d.r.ReadByte() + if err != nil { + return nil, err + } + } if marker == eoiMarker { // End Of Image. break }