aboutsummaryrefslogtreecommitdiffstats
path: root/facebook/facebook.c
diff options
context:
space:
mode:
authordequis <dx@dxzone.com.ar>2017-01-07 18:25:33 -0300
committerdequis <dx@dxzone.com.ar>2017-01-07 23:59:46 -0300
commite5e8c89a313637778ac730533c2d6b9c9254da75 (patch)
treef65dbc7bc536392c685f59dbb542a2c13916a911 /facebook/facebook.c
parent785dc5490426566946a5510f893b523c37f1f39a (diff)
downloadbitlbee-facebook-e5e8c89a313637778ac730533c2d6b9c9254da75.tar.gz
bitlbee-facebook-e5e8c89a313637778ac730533c2d6b9c9254da75.tar.bz2
bitlbee-facebook-e5e8c89a313637778ac730533c2d6b9c9254da75.tar.xz
Refactor, split off sync-contacts timeout code from fb_cb_api_contacts
Diffstat (limited to 'facebook/facebook.c')
-rw-r--r--facebook/facebook.c33
1 files changed, 20 insertions, 13 deletions
diff --git a/facebook/facebook.c b/facebook/facebook.c
index 4ef9fc9..8c7d926 100644
--- a/facebook/facebook.c
+++ b/facebook/facebook.c
@@ -199,15 +199,32 @@ fb_cb_sync_contacts(gpointer data, gint fd, b_input_condition cond)
}
static void
+fb_sync_contacts_add_timeout(FbData *fata)
+{
+ gint sync;
+ struct im_connection *ic = fb_data_get_connection(fata);
+ account_t *acct = ic->acc;
+
+ sync = set_getint(&acct->set, "sync_interval");
+
+ if (sync < 5) {
+ set_setint(&acct->set, "sync_interval", 5);
+ sync = 5;
+ }
+
+ sync *= 60 * 1000;
+ fb_data_add_timeout(fata, "sync-contacts", sync, fb_cb_sync_contacts,
+ fata);
+}
+
+static void
fb_cb_api_contacts(FbApi *api, GSList *users, gboolean complete, gpointer data)
{
- account_t *acct;
bee_user_t *bu;
FbApiUser *user;
FbData *fata = data;
FbId muid;
gchar uid[FB_ID_STRMAX];
- gint sync;
GSList *l;
GValue val = G_VALUE_INIT;
struct im_connection *ic;
@@ -261,17 +278,7 @@ fb_cb_api_contacts(FbApi *api, GSList *users, gboolean complete, gpointer data)
fb_api_connect(api, FALSE);
}
- acct = ic->acc;
- sync = set_getint(&acct->set, "sync_interval");
-
- if (sync < 5) {
- set_setint(&acct->set, "sync_interval", 5);
- sync = 5;
- }
-
- sync *= 60 * 1000;
- fb_data_add_timeout(fata, "sync-contacts", sync, fb_cb_sync_contacts,
- fata);
+ fb_sync_contacts_add_timeout(fata);
}
static void