From: Wilfried Goesgens Date: Mon, 27 Feb 2012 23:44:07 +0000 (+0100) Subject: SMTP-client: when serializing, make next now+Retry X-Git-Tag: v8.11~157 X-Git-Url: https://code.citadel.org/?p=citadel.git;a=commitdiff_plain;h=5ce81abfa49b1fcc83525b2ca14f393eeb98f7a7 SMTP-client: when serializing, make next now+Retry --- diff --git a/citadel/modules/smtp/serv_smtpqueue.c b/citadel/modules/smtp/serv_smtpqueue.c index 0d1073558..b2c0ea233 100644 --- a/citadel/modules/smtp/serv_smtpqueue.c +++ b/citadel/modules/smtp/serv_smtpqueue.c @@ -341,7 +341,7 @@ StrBuf *SerializeQueueItem(OneQueItem *MyQItem) StrBufAppendBufPlain(QMessage, HKEY("\nattempted|"), 0); StrBufAppendPrintf(QMessage, "%ld", - MyQItem->ReattemptWhen); + ctdl_ev_now() + MyQItem->Retry); It = GetNewHashPos(MyQItem->MailQEntries, 0); while (GetNextHashPos(MyQItem->MailQEntries, It, &len, &Key, &vQE)) @@ -422,7 +422,10 @@ void QItem_Handle_retry(OneQueItem *Item, StrBuf *Line, const char **Pos) { Item->Retry = StrBufExtractNext_int(Line, Pos, '|'); - Item->Retry *= 2; + if (Item->Retry == 0) + Item->Retry = SMTP_RETRY_INTERVAL; + else + Item->Retry *= 2; }