]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: Add missing service_user ref when creating shared mailbox's user.
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Wed, 22 Feb 2017 14:09:07 +0000 (16:09 +0200)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Wed, 22 Feb 2017 14:10:13 +0000 (16:10 +0200)
Was forgotten from d1bf4ae66b8bf3b9e28df1823d6d4adda2b923b6

Fixes:
Panic: file mail-storage-service.c: line 1513 (mail_storage_service_user_unref): assertion failed: (user->refcount > 0)

src/lib-storage/index/shared/shared-storage.c

index 548ec1de55eab751cae489b038c2095660017f95..8b66e344c31e71015ec9f7c68d6d19e95e86d55b 100644 (file)
@@ -6,6 +6,7 @@
 #include "ioloop.h"
 #include "var-expand.h"
 #include "index-storage.h"
+#include "mail-storage-service.h"
 #include "mailbox-list-private.h"
 #include "fail-mail-storage.h"
 #include "shared-storage.h"
@@ -253,6 +254,7 @@ int shared_storage_get_namespace(struct mail_namespace **_ns,
        owner = mail_user_alloc(userdomain, user->set_info,
                                user->unexpanded_set);
        owner->_service_user = user->_service_user;
+       mail_storage_service_user_ref(owner->_service_user);
        owner->creator = user;
        owner->autocreated = TRUE;
        owner->session_id = p_strdup(owner->pool, user->session_id);