changeset 21674:785620a45fc5

lib-storage: Add missing service_user ref when creating shared mailbox's user. Was forgotten from d1bf4ae66b8bf3b9e28df1823d6d4adda2b923b6 Fixes: Panic: file mail-storage-service.c: line 1513 (mail_storage_service_user_unref): assertion failed: (user->refcount > 0)
author Timo Sirainen <timo.sirainen@dovecot.fi>
date Wed, 22 Feb 2017 16:09:07 +0200
parents e4b2931f3566
children 82913199b864
files src/lib-storage/index/shared/shared-storage.c
diffstat 1 files changed, 2 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib-storage/index/shared/shared-storage.c	Mon Jan 30 21:53:01 2017 +0200
+++ b/src/lib-storage/index/shared/shared-storage.c	Wed Feb 22 16:09:07 2017 +0200
@@ -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"
@@ -255,6 +256,7 @@
 	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);