diff --git a/lib/_tls_wrap.js b/lib/_tls_wrap.js index fb9662c922956f..b28e3b62b74daf 100644 --- a/lib/_tls_wrap.js +++ b/lib/_tls_wrap.js @@ -248,9 +248,11 @@ function onocspresponse(resp) { function onerror(err) { const owner = this[owner_symbol]; - if (owner._writableState.errorEmitted) + if (owner._hadError) return; + owner._hadError = true; + // Destroy socket if error happened before handshake's finish if (!owner._secureEstablished) { // When handshake fails control is not yet released, @@ -265,8 +267,6 @@ function onerror(err) { // Throw error owner._emitTLSError(err); } - - owner._writableState.errorEmitted = true; } function initRead(tls, wrapped) {