x-Line synchronization: Don't send negative durations

This commit is contained in:
Alexander Barton 2016-12-08 00:22:05 +01:00
parent d0d4de4980
commit 0dc3c13469
1 changed files with 3 additions and 1 deletions

View File

@ -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);