pidgin/pidgin

c7a1976029ea
Parents 953d004873ec
Children 94b23a04da62
facebook: fixed the self contact being ignored

This is a regression introduced by 25bab54.
--- a/libpurple/protocols/facebook/api.c Mon Dec 28 14:22:23 2015 +0100
+++ b/libpurple/protocols/facebook/api.c Mon Dec 28 16:02:59 2015 -0500
@@ -1941,8 +1941,10 @@
{
const gchar *str;
FbApi *api = data;
+ FbApiPrivate *priv = api->priv;
FbApiUser *user;
FbHttpParams *prms;
+ FbId uid;
FbJsonValues *values;
gboolean complete;
gchar *writeid = NULL;
@@ -1959,9 +1961,9 @@
fb_json_values_add(values, FB_JSON_TYPE_STR, TRUE,
"$.graph_api_write_id");
fb_json_values_add(values, FB_JSON_TYPE_STR, TRUE,
- "$.represented_profile.friendship_status");
+ "$.represented_profile.id");
fb_json_values_add(values, FB_JSON_TYPE_STR, TRUE,
- "$.represented_profile.id");
+ "$.represented_profile.friendship_status");
fb_json_values_add(values, FB_JSON_TYPE_STR, TRUE,
"$.structured_name.text");
fb_json_values_add(values, FB_JSON_TYPE_STR, TRUE,
@@ -1972,17 +1974,20 @@
while (fb_json_values_update(values, &err)) {
g_free(writeid);
writeid = fb_json_values_next_str_dup(values, NULL);
+ count++;
+
+ str = fb_json_values_next_str(values, "0");
+ uid = FB_ID_FROM_STR(str);
str = fb_json_values_next_str(values, NULL);
- count++;
-
- if (!purple_strequal(str, "ARE_FRIENDS")) {
+
+ if (!purple_strequal(str, "ARE_FRIENDS") &&
+ (uid != priv->uid))
+ {
continue;
}
user = fb_api_user_dup(NULL, FALSE);
- str = fb_json_values_next_str(values, "0");
-
- user->uid = FB_ID_FROM_STR(str);
+ user->uid = uid;
user->name = fb_json_values_next_str_dup(values, NULL);
user->icon = fb_json_values_next_str_dup(values, NULL);