X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fngircd%2Fnumeric.c;h=380b9078b210deb9a6853cf2c966357efec75481;hb=798de94d6556bdf2c6019f368ad7441fe6e2d1be;hp=82e0cf0155a0cf32c939c9078731e9d09623c18f;hpb=d8aba40f07d739692cdeccbd49a1c163998945ba;p=ngircd-alex.git diff --git a/src/ngircd/numeric.c b/src/ngircd/numeric.c index 82e0cf01..380b9078 100644 --- a/src/ngircd/numeric.c +++ b/src/ngircd/numeric.c @@ -176,6 +176,7 @@ Synchronize_Lists(CLIENT * Client) CHANNEL *c; struct list_head *head; struct list_elem *elem; + time_t t; assert(Client != NULL); @@ -183,9 +184,10 @@ Synchronize_Lists(CLIENT * Client) head = Class_GetList(CLASS_GLINE); elem = Lists_GetFirst(head); while (elem) { + t = Lists_GetValidity(elem) - time(NULL); if (!IRC_WriteStrClient(Client, "GLINE %s %ld :%s", Lists_GetMask(elem), - (long)(Lists_GetValidity(elem) - time(NULL)), + t > 0 ? (long)t : 0, Lists_GetReason(elem))) return DISCONNECTED; elem = Lists_GetNext(elem);