From 3c208b0d26b2348cb02f7feddf72893872ab7c60 Mon Sep 17 00:00:00 2001 From: Yusef Napora Date: Fri, 17 Jan 2020 15:43:33 -0500 Subject: [PATCH] Revert "return buffer to pool before early return" 8d8da386f26482e06dc21989a6b5ade69f0a46d9 misread this - unsigned will be nil if there's an error, so it was right the way it was --- record/envelope.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/record/envelope.go b/record/envelope.go index e5b1f33b..5d395fd9 100644 --- a/record/envelope.go +++ b/record/envelope.go @@ -65,10 +65,10 @@ func MakeEnvelope(privateKey crypto.PrivKey, domain string, payloadType []byte, seq := statelessSeqNo() unsigned, err := makeUnsigned(domain, payloadType, payload, seq) - defer pool.Put(unsigned) if err != nil { return nil, err } + defer pool.Put(unsigned) sig, err := privateKey.Sign(unsigned) if err != nil { @@ -226,10 +226,10 @@ func (e *Envelope) TypedRecord(dest Record) error { // or an error if signature validation fails. func (e *Envelope) validate(domain string) error { unsigned, err := makeUnsigned(domain, e.PayloadType, e.RawPayload, e.Seq) - defer pool.Put(unsigned) if err != nil { return err } + defer pool.Put(unsigned) valid, err := e.PublicKey.Verify(unsigned, e.signature) if err != nil {