diff options
Diffstat (limited to 'libgo/go/image/gif/reader_test.go')
-rw-r--r-- | libgo/go/image/gif/reader_test.go | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/libgo/go/image/gif/reader_test.go b/libgo/go/image/gif/reader_test.go index 90c81493cba..1267ba06a9d 100644 --- a/libgo/go/image/gif/reader_test.go +++ b/libgo/go/image/gif/reader_test.go @@ -10,6 +10,7 @@ import ( "image" "image/color" "reflect" + "strings" "testing" ) @@ -292,3 +293,19 @@ func TestLoopCount(t *testing.T) { t.Errorf("loop count mismatch: %d vs %d", img.LoopCount, img1.LoopCount) } } + +func TestUnexpectedEOF(t *testing.T) { + for i := len(testGIF) - 1; i >= 0; i-- { + _, err := Decode(bytes.NewReader(testGIF[:i])) + if err == errNotEnough { + continue + } + text := "" + if err != nil { + text = err.Error() + } + if !strings.HasPrefix(text, "gif:") || !strings.HasSuffix(text, ": unexpected EOF") { + t.Errorf("Decode(testGIF[:%d]) = %v, want gif: ...: unexpected EOF", i, err) + } + } +} |