Open
Description
Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version
)?
go version go1.8.3 darwin/amd64
What operating system and processor architecture are you using (go env
)?
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/montanaflynn/Development/go"
GORACE=""
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/w7/gd1mgc9n05q_9hrtt2sd75dw0000gn/T/go-build873139005=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
What did you do?
Tried to decode this gif:
package main
import (
"flag"
"fmt"
"image/gif"
"net/http"
"os"
)
func exitIfError(err error) {
if err == nil {
return
}
fmt.Fprintf(os.Stderr, "%v\n", err)
os.Exit(1)
}
func main() {
gifURL := flag.String("url", "https://cdn.keycdn.com/img/analytics.gif", "the URL of the GIF")
flag.Parse()
res, err := http.Get(*gifURL)
exitIfError(err)
_, err = gif.DecodeAll(res.Body)
_ = res.Body.Close()
exitIfError(err)
}
What did you expect to see?
The gif decoding not to return an error. The gif opens up in browsers, ffmpeg and photoshop.
When using ffmpeg you see this warning log:
[gif @ 0x7faca2801000] Image too wide by 1, truncating.
What did you see instead?
gif: frame bounds larger than image bounds
I found this link which seems related:
https://groups.google.com/forum/#!topic/golang-codereviews/3zxEsAv4IuU