aboutsummaryrefslogtreecommitdiffstats
path: root/protocols
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2012-09-22 13:44:47 +0100
committerWilmer van der Gaast <wilmer@gaast.net>2012-09-22 13:44:47 +0100
commit11ec07811cc41e1b244467d25772ef021be9db1b (patch)
tree007b2e6b223bd9f6682fdfd21d3d1738b9abd71c /protocols
parentd0752e8b08d37395fd036046552fa6b4fb92ac17 (diff)
Since I can't figure out where the stalls are coming from at this point, at
least have a work-around for it. After hitting the Twitter timer a few times while a previous fetch still seems to be running, close the connection. Auto-reconnect will do the rest.
Diffstat (limited to 'protocols')
-rw-r--r--protocols/twitter/twitter_lib.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/protocols/twitter/twitter_lib.c b/protocols/twitter/twitter_lib.c
index 757cb6fe..8e2804a5 100644
--- a/protocols/twitter/twitter_lib.c
+++ b/protocols/twitter/twitter_lib.c
@@ -734,7 +734,10 @@ void twitter_get_timeline(struct im_connection *ic, gint64 next_cursor)
gboolean include_mentions = set_getbool(&ic->acc->set, "fetch_mentions");
if (td->flags & TWITTER_DOING_TIMELINE) {
- return;
+ if (++td->http_fails >= 5) {
+ imcb_error(ic, "Fetch timeout (%d)", td->flags);
+ imc_logout(ic, TRUE);
+ }
}
td->flags |= TWITTER_DOING_TIMELINE;