From f91e694bdb01987229ad9933da42ae514126524a Mon Sep 17 00:00:00 2001 From: Leonid Bugaev Date: Mon, 10 Jul 2023 21:23:11 +0300 Subject: [PATCH] Fix for nil case --- gateway/reverse_proxy.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/gateway/reverse_proxy.go b/gateway/reverse_proxy.go index 651932df5de..8e7f6839b25 100644 --- a/gateway/reverse_proxy.go +++ b/gateway/reverse_proxy.go @@ -1203,16 +1203,20 @@ func (p *ReverseProxy) WrappedServeHTTP(rw http.ResponseWriter, req *http.Reques } if createTransport { - oldTransport := p.TykAPISpec.HTTPTransport.transport - // Prevent new idle connections to be generated. - oldTransport.DisableKeepAlives = true + var oldTransport *http.Transport + + if p.TykAPISpec.HTTPTransport != nil { + oldTransport = p.TykAPISpec.HTTPTransport.transport + // Prevent new idle connections to be generated. + oldTransport.DisableKeepAlives = true + } _, timeout := p.CheckHardTimeoutEnforced(p.TykAPISpec, req) p.TykAPISpec.HTTPTransport = p.httpTransport(timeout, rw, req, outreq) p.TykAPISpec.HTTPTransportCreated = time.Now() - if p.TykAPISpec.HTTPTransport != nil { + if oldTransport != nil { oldTransport.CloseIdleConnections() } }