Index: chrome/browser/chrome_to_mobile_service.cc |
diff --git a/chrome/browser/chrome_to_mobile_service.cc b/chrome/browser/chrome_to_mobile_service.cc |
index 59ecee06fdc178be460bce61a824d501ed929695..2073373d8b1e1bde0edbf970c9cb8f17a01ac408 100644 |
--- a/chrome/browser/chrome_to_mobile_service.cc |
+++ b/chrome/browser/chrome_to_mobile_service.cc |
@@ -478,6 +478,16 @@ void ChromeToMobileService::OnIncomingInvalidation( |
DCHECK_EQ(1U, invalidation_map.count(invalidation::ObjectId( |
ipc::invalidation::ObjectSource::CHROME_COMPONENTS, |
kSyncInvalidationObjectIdChromeToMobileDeviceList))); |
+ // TODO(msw): Unit tests do not provide profiles; see http://crbug.com/122183 |
+ ProfileSyncService* profile_sync_service = |
+ profile_ ? ProfileSyncServiceFactory::GetForProfile(profile_) : NULL; |
+ if (profile_sync_service) { |
+ // TODO(dcheng): Only acknowledge the invalidation once the device search |
+ // has finished. http://crbug.com/156843. |
+ profile_sync_service->AcknowledgeInvalidation( |
+ invalidation_map.begin()->first, |
+ invalidation_map.begin()->second.ack_handle); |
+ } |
RequestDeviceSearch(); |
} |