| package a |
| |
| import ( |
| "log" |
| "net/http" |
| ) |
| |
| func goodHTTPGet() { |
| res, err := http.Get("http://foo.com") |
| if err != nil { |
| log.Fatal(err) |
| } |
| defer res.Body.Close() |
| } |
| |
| func badHTTPGet() { |
| res, err := http.Get("http://foo.com") |
| defer res.Body.Close() // want "using res before checking for errors" |
| if err != nil { |
| log.Fatal(err) |
| } |
| } |
| |
| func badHTTPHead() { |
| res, err := http.Head("http://foo.com") |
| defer res.Body.Close() // want "using res before checking for errors" |
| if err != nil { |
| log.Fatal(err) |
| } |
| } |
| |
| func goodClientGet() { |
| client := http.DefaultClient |
| res, err := client.Get("http://foo.com") |
| if err != nil { |
| log.Fatal(err) |
| } |
| defer res.Body.Close() |
| } |
| |
| func badClientPtrGet() { |
| client := http.DefaultClient |
| resp, err := client.Get("http://foo.com") |
| defer resp.Body.Close() // want "using resp before checking for errors" |
| if err != nil { |
| log.Fatal(err) |
| } |
| } |
| |
| func badClientGet() { |
| client := http.Client{} |
| resp, err := client.Get("http://foo.com") |
| defer resp.Body.Close() // want "using resp before checking for errors" |
| if err != nil { |
| log.Fatal(err) |
| } |
| } |
| |
| func badClientPtrDo() { |
| client := http.DefaultClient |
| req, err := http.NewRequest("GET", "http://foo.com", nil) |
| if err != nil { |
| log.Fatal(err) |
| } |
| |
| resp, err := client.Do(req) |
| defer resp.Body.Close() // want "using resp before checking for errors" |
| if err != nil { |
| log.Fatal(err) |
| } |
| } |
| |
| func badClientDo() { |
| var client http.Client |
| req, err := http.NewRequest("GET", "http://foo.com", nil) |
| if err != nil { |
| log.Fatal(err) |
| } |
| |
| resp, err := client.Do(req) |
| defer resp.Body.Close() // want "using resp before checking for errors" |
| if err != nil { |
| log.Fatal(err) |
| } |
| } |