dovecot-2.1: lib-storage: %h variable didn't necessarily expand ...

dovecot at dovecot.org dovecot at dovecot.org
Mon Jul 16 17:40:56 EEST 2012


details:   http://hg.dovecot.org/dovecot-2.1/rev/abaafe4cc439
changeset: 14614:abaafe4cc439
user:      Timo Sirainen <tss at iki.fi>
date:      Mon Jul 16 17:40:45 2012 +0300
description:
lib-storage: %h variable didn't necessarily expand correctly for shared users' settings.

diffstat:

 src/lib-storage/mail-user.c |  4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diffs (14 lines):

diff -r 5bbdfee113a5 -r abaafe4cc439 src/lib-storage/mail-user.c
--- a/src/lib-storage/mail-user.c	Mon Jul 16 16:49:16 2012 +0300
+++ b/src/lib-storage/mail-user.c	Mon Jul 16 17:40:45 2012 +0300
@@ -201,7 +201,9 @@
 	};
 	struct var_expand_table *tab;
 
-	if (user->var_expand_table != NULL)
+	/* use a cached table, unless home directory has been set afterwards */
+	if (user->var_expand_table != NULL &&
+	    user->var_expand_table[4].value == user->_home)
 		return user->var_expand_table;
 
 	tab = p_malloc(user->pool, sizeof(static_tab));


More information about the dovecot-cvs mailing list