MCPcopy
hub / github.com/caddyserver/caddy / Close

Method Close

modules/caddyhttp/encode/encode.go:415–438  ·  view source on GitHub ↗

Close writes any remaining buffered response and deallocates any active resources.

()

Source from the content-addressed store, hash-verified

413// Close writes any remaining buffered response and
414// deallocates any active resources.
415func (rw *responseWriter) Close() error {
416 // didn't write, probably head request
417 if !rw.wroteHeader {
418 cl, err := strconv.Atoi(rw.Header().Get("Content-Length"))
419 if err == nil && cl > rw.config.MinLength {
420 rw.init()
421 }
422
423 // issue #5059, don't write status code if not set explicitly.
424 if rw.statusCode != 0 {
425 rw.ResponseWriter.WriteHeader(rw.statusCode)
426 }
427 rw.wroteHeader = true
428 }
429
430 var err error
431 if rw.w != nil {
432 err = rw.w.Close()
433 rw.w.Reset(nil)
434 rw.config.writerPools[rw.encodingName].Put(rw.w)
435 rw.w = nil
436 }
437 return err
438}
439
440// Unwrap returns the underlying ResponseWriter.
441func (rw *responseWriter) Unwrap() http.ResponseWriter {

Callers 9

ServeHTTPMethod · 0.45
readFileToBufferMethod · 0.45
funcListFilesMethod · 0.45
funcFileExistsMethod · 0.45
funcFileStatMethod · 0.45
serveBrowseMethod · 0.45
TestFileMatcherFunction · 0.45
ServeHTTPMethod · 0.45

Calls 5

initMethod · 0.95
GetMethod · 0.65
ResetMethod · 0.65
HeaderMethod · 0.45
WriteHeaderMethod · 0.45

Tested by 2

TestFileMatcherFunction · 0.36