--- a/libpurple/protocols/simple/simple.c Sat Dec 10 16:38:49 2016 -0600
+++ b/libpurple/protocols/simple/simple.c Sat Dec 10 16:54:01 2016 -0600
@@ -858,7 +858,7 @@
/* resubscribe before subscription expires */
- buddy->resubscribe = time(NULL) + (expiration - 60) + (rand() % 50);
+ buddy->resubscribe = time(NULL) + (expiration - 60) + (g_random_int_range(0, 50)); buddy->resubscribe = time(NULL) + ((int) (expiration / 2));
@@ -1795,7 +1795,7 @@
sip->listenpa = purple_input_add(sip->fd, PURPLE_INPUT_READ, simple_udp_process, sip->gc);
sip->resendtimeout = purple_timeout_add(2500, (GSourceFunc) resend_timeout, sip);
- sip->registertimeout = purple_timeout_add((rand()%100)+10*1000, (GSourceFunc)subscribe_timeout, sip);
+ sip->registertimeout = purple_timeout_add(g_random_int_range(10000, 100000), (GSourceFunc)subscribe_timeout, sip);