Skip to content

Commit d06071b

Browse files
authored
fix: fixed callback invocations to check if session already closed (#705)
1 parent 4ef3eaa commit d06071b

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

lib/pop3/connection.js

+15
Original file line numberDiff line numberDiff line change
@@ -727,6 +727,11 @@ class POP3Connection extends EventEmitter {
727727
}
728728

729729
this._server.onFetchMessage(message, this.session, (err, stream) => {
730+
if (!this.session) {
731+
// already closed, do nothing
732+
return;
733+
}
734+
730735
if (err) {
731736
this._server.loggelf({
732737
short_message: '[POP3RETR] error',
@@ -810,6 +815,11 @@ class POP3Connection extends EventEmitter {
810815
}
811816

812817
this._server.onFetchMessage(message, this.session, (err, stream) => {
818+
if (!this.session) {
819+
// already closed, do nothing
820+
return;
821+
}
822+
813823
if (err) {
814824
this._server.loggelf({
815825
short_message: '[POP3TOP] error',
@@ -1002,6 +1012,11 @@ class POP3Connection extends EventEmitter {
10021012

10031013
openMailbox(next) {
10041014
this._server.onListMessages(this.session, (err, listing) => {
1015+
if (!this.session) {
1016+
// already closed, do nothing
1017+
return;
1018+
}
1019+
10051020
if (err) {
10061021
this.logger.info(
10071022
{

0 commit comments

Comments
 (0)