dovecot-2.2: replicator: Queue handling was pretty broken

dovecot at dovecot.org dovecot at dovecot.org
Sun May 20 03:26:24 EEST 2012


details:   http://hg.dovecot.org/dovecot-2.2/rev/633e587446d8
changeset: 14270:633e587446d8
user:      Timo Sirainen <tss at iki.fi>
date:      Sun Mar 04 12:04:46 2012 +0200
description:
replicator: Queue handling was pretty broken

diffstat:

 src/replication/replicator/replicator-queue.c |  3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diffs (20 lines):

diff -r 9d47be37afeb -r 633e587446d8 src/replication/replicator/replicator-queue.c
--- a/src/replication/replicator/replicator-queue.c	Sun Mar 04 11:23:14 2012 +0200
+++ b/src/replication/replicator/replicator-queue.c	Sun Mar 04 12:04:46 2012 +0200
@@ -111,6 +111,7 @@
 	if (user == NULL) {
 		user = i_new(struct replicator_user, 1);
 		user->username = i_strdup(username);
+		hash_table_insert(queue->user_hash, user->username, user);
 	} else {
 		if (user->priority > priority) {
 			/* user already has a higher priority than this */
@@ -237,6 +238,8 @@
 void replicator_queue_push(struct replicator_queue *queue,
 			   struct replicator_user *user)
 {
+	i_assert(user->popped);
+
 	priorityq_add(queue->user_queue, &user->item);
 	user->popped = FALSE;
 


More information about the dovecot-cvs mailing list