From: Timo Sirainen Date: Tue, 2 Mar 2010 15:21:16 +0000 (+0200) Subject: Compiler warning fix. X-Git-Tag: 2.0.beta4~139 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=5e0d4b90ef697b8ccc2889eeb6035b27b50baff5;p=thirdparty%2Fdovecot%2Fcore.git Compiler warning fix. --HG-- branch : HEAD --- diff --git a/src/anvil/penalty.c b/src/anvil/penalty.c index e47b43bcc6..4c0d31288c 100644 --- a/src/anvil/penalty.c +++ b/src/anvil/penalty.c @@ -160,27 +160,24 @@ unsigned int penalty_get(struct penalty *penalty, const char *ident, static void penalty_timeout(struct penalty *penalty) { struct penalty_rec *rec; - time_t expire_time; + time_t rec_last_update, expire_time; + unsigned int diff; expire_time = ioloop_time - penalty->expire_secs; while (penalty->oldest != NULL) { rec = penalty->oldest; - if (rec->last_penalty + (time_t)rec->last_update > expire_time) + rec_last_update = rec->last_penalty + rec->last_update; + if (rec_last_update > expire_time) { + diff = rec_last_update - expire_time; + penalty->to = timeout_add(diff * 1000, + penalty_timeout, penalty); break; + } hash_table_remove(penalty->hash, rec->ident); penalty_rec_free(penalty, rec); } - timeout_remove(&penalty->to); - rec = penalty->oldest; - if (rec != NULL) { - unsigned int diff; - - diff = rec->last_penalty + rec->last_update - expire_time; - penalty->to = timeout_add(diff * 1000, - penalty_timeout, penalty); - } } void penalty_inc(struct penalty *penalty, const char *ident,