summaryrefslogtreecommitdiff
path: root/src/roster.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/roster.c')
-rw-r--r--src/roster.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/roster.c b/src/roster.c
index d7c05272c..3a818ff0a 100644
--- a/src/roster.c
+++ b/src/roster.c
@@ -1377,6 +1377,16 @@ got_roster_iq (GabbleRoster *roster,
return FALSE;
}
+ if (sub_type == WOCKY_STANZA_SUB_TYPE_RESULT && priv->received)
+ {
+ /* <https://bugs.freedesktop.org/show_bug.cgi?id=42186>: some super-buggy
+ * XMPP server running on vk.com sends its reply to our roster query twice.
+ */
+ DEBUG ("The server sent replied to our roster query more than once! "
+ "Ignoring this reply");
+ return FALSE;
+ }
+
process_roster (roster, query_node);
if (sub_type == WOCKY_STANZA_SUB_TYPE_RESULT)