diff --git a/imap-core/lib/imap-connection.js b/imap-core/lib/imap-connection.js index ef190227..c9a21ea8 100644 --- a/imap-core/lib/imap-connection.js +++ b/imap-core/lib/imap-connection.js @@ -203,7 +203,9 @@ class IMAPConnection extends EventEmitter { return; } - this._server.notifier.removeListener(this.session, '*', this._accountListener); + if (this.user) { + this._server.notifier.removeListener({ user: this.user }, '*', this._accountListener); + } this._parser = false; @@ -745,7 +747,7 @@ class IMAPConnection extends EventEmitter { } setUser(user) { - this.session.user = user; + this.user = this.session.user = user; this._server.notifier.addListener(this.session, '*', this._accountListener); } } diff --git a/imap-core/test/memory-notifier.js b/imap-core/test/memory-notifier.js index e8292469..821d9796 100644 --- a/imap-core/test/memory-notifier.js +++ b/imap-core/test/memory-notifier.js @@ -37,7 +37,10 @@ class MemoryNotifier extends EventEmitter { * @returns {String} md5 hex */ _eventName(mailbox, username) { - return crypto.createHash('md5').update(username + ':' + mailbox).digest('hex'); + return crypto + .createHash('md5') + .update(username + ':' + mailbox) + .digest('hex'); } /** diff --git a/package.json b/package.json index e8057c9a..b96f1cc1 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "wildduck", - "version": "1.0.82", + "version": "1.0.83", "description": "IMAP server built with Node.js and MongoDB", "main": "server.js", "scripts": {