summaryrefslogtreecommitdiff
path: root/vendor/github.com/go-openapi/runtime/request.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/go-openapi/runtime/request.go')
-rw-r--r--vendor/github.com/go-openapi/runtime/request.go14
1 files changed, 12 insertions, 2 deletions
diff --git a/vendor/github.com/go-openapi/runtime/request.go b/vendor/github.com/go-openapi/runtime/request.go
index 078fda173..9e3e1ecb1 100644
--- a/vendor/github.com/go-openapi/runtime/request.go
+++ b/vendor/github.com/go-openapi/runtime/request.go
@@ -16,6 +16,8 @@ package runtime
import (
"bufio"
+ "context"
+ "errors"
"io"
"net/http"
"strings"
@@ -96,10 +98,16 @@ func (p *peekingReader) Read(d []byte) (int, error) {
if p == nil {
return 0, io.EOF
}
+ if p.underlying == nil {
+ return 0, io.ErrUnexpectedEOF
+ }
return p.underlying.Read(d)
}
func (p *peekingReader) Close() error {
+ if p.underlying == nil {
+ return errors.New("reader already closed")
+ }
p.underlying = nil
if p.orig != nil {
return p.orig.Close()
@@ -107,9 +115,11 @@ func (p *peekingReader) Close() error {
return nil
}
-// JSONRequest creates a new http request with json headers set
+// JSONRequest creates a new http request with json headers set.
+//
+// It uses context.Background.
func JSONRequest(method, urlStr string, body io.Reader) (*http.Request, error) {
- req, err := http.NewRequest(method, urlStr, body)
+ req, err := http.NewRequestWithContext(context.Background(), method, urlStr, body)
if err != nil {
return nil, err
}