Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(57)

Unified Diff: chrome/browser/services/gcm/gcm_profile_service.cc

Issue 185133008: [GCM] Only allow the senders that the application is currently registered for (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/services/gcm/gcm_profile_service.cc
diff --git a/chrome/browser/services/gcm/gcm_profile_service.cc b/chrome/browser/services/gcm/gcm_profile_service.cc
index c215192c8df17f593250d6d4f9d6306a0d3b5f73..c1fc24c655194bc3960f612943805c3222deb1ff 100644
--- a/chrome/browser/services/gcm/gcm_profile_service.cc
+++ b/chrome/browser/services/gcm/gcm_profile_service.cc
@@ -912,7 +912,19 @@ void GCMProfileService::MessageReceived(const std::string& app_id,
if (username_.empty())
return;
- GetEventRouter(app_id)->OnMessage(app_id, message);
+ RegistrationInfoMap::iterator info_iter = registration_info_map_.find(app_id);
+ if (info_iter == registration_info_map_.end())
+ return;
+
+ for (std::vector<std::string>::const_iterator iter =
jianli 2014/03/05 01:33:02 nit: Please add a comment like: // Drop the mess
fgorski 2014/03/05 19:30:22 Done.
+ info_iter->second.sender_ids.begin();
+ iter != info_iter->second.sender_ids.end();
+ ++iter) {
+ if (*iter == message.sender_id) {
+ GetEventRouter(app_id)->OnMessage(app_id, message);
+ return;
+ }
+ }
}
void GCMProfileService::MessagesDeleted(const std::string& app_id) {

Powered by Google App Engine
This is Rietveld 408576698