diff options
author | Marius Halden <marius.h@lden.org> | 2017-09-06 14:16:29 +0200 |
---|---|---|
committer | Marius Halden <marius.h@lden.org> | 2017-09-06 14:16:29 +0200 |
commit | f5a6c8e103d06d949c6ef292cbfc0af2a6fe42e0 (patch) | |
tree | fac0b4471ad051b0bd4ab679d86fd97b6e95e36a /facebook/facebook-api.c | |
parent | 049c34398641f52913c00832ad24388442b61caa (diff) | |
parent | bc523728d7ae97a617746a47b451e7adf4a58927 (diff) | |
download | bitlbee-facebook-f5a6c8e103d06d949c6ef292cbfc0af2a6fe42e0.tar.gz bitlbee-facebook-f5a6c8e103d06d949c6ef292cbfc0af2a6fe42e0.tar.bz2 bitlbee-facebook-f5a6c8e103d06d949c6ef292cbfc0af2a6fe42e0.tar.xz |
Merge branch 'master' into track-messages
Diffstat (limited to 'facebook/facebook-api.c')
-rw-r--r-- | facebook/facebook-api.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/facebook/facebook-api.c b/facebook/facebook-api.c index a72f386..fb0581d 100644 --- a/facebook/facebook-api.c +++ b/facebook/facebook-api.c @@ -1853,8 +1853,18 @@ fb_api_cb_publish_pt(FbThrift *thft, GSList **press, GError **error) FB_API_TCHK(fb_thrift_read_i64(thft, NULL)); break; + case 6: + /* Unknown new field */ + FB_API_TCHK(type == FB_THRIFT_TYPE_I64); + FB_API_TCHK(fb_thrift_read_i64(thft, NULL)); + break; + default: - FB_API_TCHK(FALSE); + /* Try to read unknown fields as varint */ + FB_API_TCHK(type == FB_THRIFT_TYPE_I16 || + type == FB_THRIFT_TYPE_I32 || + type == FB_THRIFT_TYPE_I64); + FB_API_TCHK(fb_thrift_read_i64(thft, NULL)); break; } } @@ -2389,7 +2399,7 @@ fb_api_cb_contacts(FbHttpRequest *req, gpointer data) priv->contacts_delta = g_strdup(is_delta ? cursor : delta_cursor); } - if (users) { + if (users || (complete && !is_delta)) { g_signal_emit_by_name(api, "contacts", users, complete); } |