summary refs log tree commit diff stats
path: root/src/common
diff options
context:
space:
mode:
Diffstat (limited to 'src/common')
-rw-r--r--src/common/hexchat.c10
-rw-r--r--src/common/hexchat.h2
2 files changed, 8 insertions, 4 deletions
diff --git a/src/common/hexchat.c b/src/common/hexchat.c
index d44fa2f4..07f91cfb 100644
--- a/src/common/hexchat.c
+++ b/src/common/hexchat.c
@@ -286,12 +286,16 @@ lag_check (void)
 								 NULL, NULL, 0);
 				if (prefs.hex_net_auto_reconnect)
 					serv->auto_reconnect (serv, FALSE, -1);
-			} else if (!serv->lag_sent)
+			} else
 			{
 				snprintf (tbuf, sizeof (tbuf), "LAG%lu", tim);
 				serv->p_ping (serv, "", tbuf);
-				serv->lag_sent = tim;
-				fe_set_lag (serv, -1);
+				
+				if (!serv->lag_sent)
+				{
+					serv->lag_sent = tim;
+					fe_set_lag (serv, -1);
+				}
 			}
 		}
 		list = list->next;
diff --git a/src/common/hexchat.h b/src/common/hexchat.h
index 63d0fbed..39a44191 100644
--- a/src/common/hexchat.h
+++ b/src/common/hexchat.h
@@ -570,7 +570,7 @@ typedef struct server
 	time_t msg_last_time;
 
 	/*time_t connect_time;*/				/* when did it connect? */
-	time_t lag_sent;
+	unsigned long lag_sent;   /* we are still waiting for this ping response*/
 	time_t ping_recv;					/* when we last got a ping reply */
 	time_t away_time;					/* when we were marked away */