Index: chrome/browser/android/logo_bridge.cc |
diff --git a/chrome/browser/android/logo_bridge.cc b/chrome/browser/android/logo_bridge.cc |
index 8b24611abf5673c2f5d5822656c2494971bc0b04..dfd87e870f64e1d9e6b342fbb3d3f3b4efd603f5 100644 |
--- a/chrome/browser/android/logo_bridge.cc |
+++ b/chrome/browser/android/logo_bridge.cc |
@@ -229,7 +229,11 @@ void LogoBridge::GetCurrentLogo(JNIEnv* env, |
// Immediately hand out any current cached config. |
DoodleConfigReceived(doodle_service_->config(), /*from_cache=*/true); |
// Also request a refresh, in case something changed. |
- doodle_service_->Refresh(); |
+ if (!doodle_service_->Refresh()) { |
+ // If the request was skipped, tell the observer not to wait for |
+ // notification. This ensures that metrics recording accounts for that. |
+ Java_LogoObserver_onLogoRefreshSkipped(env, j_logo_observer_); |
+ } |
} else { |
// |observer| is deleted in LogoObserverAndroid::OnObserverRemoved(). |
LogoObserverAndroid* observer = new LogoObserverAndroid( |