From 0bbf81aa6dfcc5c74aaefc5683a8677722cfd922 Mon Sep 17 00:00:00 2001 From: andig Date: Tue, 18 May 2021 10:44:04 +0200 Subject: [PATCH] Reduce memory by removing cookie jar after login --- internal/vehicle/vw/identity.go | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/internal/vehicle/vw/identity.go b/internal/vehicle/vw/identity.go index 70f6701e7..3f8134d23 100644 --- a/internal/vehicle/vw/identity.go +++ b/internal/vehicle/vw/identity.go @@ -47,12 +47,19 @@ func NewIdentity(log *util.Logger) *Identity { Helper: request.NewHelper(log), } + return v +} + +// Login performs the identity.vwgroup.io login +func (v *Identity) login(uri, user, password string) (url.Values, error) { + // track cookies and don't follow redirects jar, _ := cookiejar.New(&cookiejar.Options{ PublicSuffixList: publicsuffix.List, }) - // track cookies and don't follow redirects v.Client.Jar = jar + defer func() { v.Client.Jar = nil }() + v.Client.CheckRedirect = func(req *http.Request, via []*http.Request) error { if req.URL.Scheme != "https" { return http.ErrUseLastResponse @@ -60,11 +67,6 @@ func NewIdentity(log *util.Logger) *Identity { return nil } - return v -} - -// Login performs the identity.vwgroup.io login -func (v *Identity) login(uri, user, password string) (url.Values, error) { var vars FormVars // add nonce and state