diff --git a/src/mail.js b/src/mail.js index 1656101d6..a599f0db2 100644 --- a/src/mail.js +++ b/src/mail.js @@ -732,11 +732,17 @@ function del(domain, callback) { assert.strictEqual(typeof domain, 'string'); assert.strictEqual(typeof callback, 'function'); - maildb.del(domain, function (error) { - if (error && error.reason === DatabaseError.NOT_FOUND) return callback(new MailError(MailError.NOT_FOUND, error.message)); - if (error) return callback(new MailError(MailError.INTERNAL_ERROR, error)); + get(domain, function (error, result) { + if (error) return callback(error); - callback(); + maildb.del(domain, function (error) { + if (error && error.reason === DatabaseError.NOT_FOUND) return callback(new MailError(MailError.NOT_FOUND, error.message)); + if (error) return callback(new MailError(MailError.INTERNAL_ERROR, error)); + + if (result && result.enabled) restartMail(NOOP_CALLBACK); + + callback(); + }); }); }