summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/sync/notifier/cache_invalidation_packet_handler.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/chrome/browser/sync/notifier/cache_invalidation_packet_handler.cc b/chrome/browser/sync/notifier/cache_invalidation_packet_handler.cc
index 0b31546..a5d23f2 100644
--- a/chrome/browser/sync/notifier/cache_invalidation_packet_handler.cc
+++ b/chrome/browser/sync/notifier/cache_invalidation_packet_handler.cc
@@ -83,9 +83,15 @@ class CacheInvalidationListenTask : public buzz::XmppTask {
private:
bool IsValidCacheInvalidationIqPacket(const buzz::XmlElement* stanza) {
+ // We make sure to compare jids (which are normalized) instead of
+ // just strings -- server may use non-normalized jids in
+ // attributes.
+ //
+ // TODO(akalin): Add unit tests for this.
+ buzz::Jid to(stanza->Attr(buzz::QN_TO));
return
(MatchRequestIq(stanza, buzz::STR_SET, kQnData) &&
- (stanza->Attr(buzz::QN_TO) == GetClient()->jid().Str()));
+ (to == GetClient()->jid()));
}
bool GetCacheInvalidationIqPacketData(const buzz::XmlElement* stanza,
@@ -164,7 +170,6 @@ class CacheInvalidationSendMessageTask : public buzz::XmppTask {
buzz::XmlElement* cache_invalidation_iq_packet =
new buzz::XmlElement(kQnData, true);
iq->AddElement(cache_invalidation_iq_packet);
- // TODO(akalin): Remove use of seq and sid.
cache_invalidation_iq_packet->SetAttr(kQnSeq, IntToString(seq));
cache_invalidation_iq_packet->SetAttr(kQnSid, sid);
cache_invalidation_iq_packet->SetAttr(kQnServiceUrl,