| 2598 FbApiPrivate *priv = api->priv; |
2598 FbApiPrivate *priv = api->priv; |
| 2599 FbApiUser *user; |
2599 FbApiUser *user; |
| 2600 FbId uid; |
2600 FbId uid; |
| 2601 FbJsonValues *values; |
2601 FbJsonValues *values; |
| 2602 gboolean haself = FALSE; |
2602 gboolean haself = FALSE; |
| |
2603 guint num_users = 0; |
| 2603 GError *err = NULL; |
2604 GError *err = NULL; |
| 2604 |
2605 |
| 2605 values = fb_json_values_new(root); |
2606 values = fb_json_values_new(root); |
| 2606 fb_json_values_add(values, FB_JSON_TYPE_STR, FALSE, |
2607 fb_json_values_add(values, FB_JSON_TYPE_STR, FALSE, |
| 2607 "$.thread_key.thread_fbid"); |
2608 "$.thread_key.thread_fbid"); |
| 2633 fb_json_values_set_array(values, TRUE, "$.all_participants.nodes"); |
2634 fb_json_values_set_array(values, TRUE, "$.all_participants.nodes"); |
| 2634 |
2635 |
| 2635 while (fb_json_values_update(values, &err)) { |
2636 while (fb_json_values_update(values, &err)) { |
| 2636 str = fb_json_values_next_str(values, "0"); |
2637 str = fb_json_values_next_str(values, "0"); |
| 2637 uid = FB_ID_FROM_STR(str); |
2638 uid = FB_ID_FROM_STR(str); |
| |
2639 num_users++; |
| 2638 |
2640 |
| 2639 if (uid != priv->uid) { |
2641 if (uid != priv->uid) { |
| 2640 user = fb_api_user_dup(NULL, FALSE); |
2642 user = fb_api_user_dup(NULL, FALSE); |
| 2641 user->uid = uid; |
2643 user->uid = uid; |
| 2642 user->name = fb_json_values_next_str_dup(values, NULL); |
2644 user->name = fb_json_values_next_str_dup(values, NULL); |
| 2651 fb_api_thread_reset(thrd, TRUE); |
2653 fb_api_thread_reset(thrd, TRUE); |
| 2652 g_object_unref(values); |
2654 g_object_unref(values); |
| 2653 return FALSE; |
2655 return FALSE; |
| 2654 } |
2656 } |
| 2655 |
2657 |
| 2656 if ((g_slist_length(thrd->users) < 2) || !haself) { |
2658 if (num_users < 2 || !haself) { |
| 2657 fb_api_thread_reset(thrd, TRUE); |
2659 fb_api_thread_reset(thrd, TRUE); |
| 2658 g_object_unref(values); |
2660 g_object_unref(values); |
| 2659 return FALSE; |
2661 return FALSE; |
| 2660 } |
2662 } |
| 2661 |
2663 |