diff -up chromium-44.0.2403.89/content/browser/time_zone_monitor.cc.icu53 chromium-44.0.2403.89/content/browser/time_zone_monitor.cc --- chromium-44.0.2403.89/content/browser/time_zone_monitor.cc.icu53 2015-07-15 22:30:02.000000000 +0200 +++ chromium-44.0.2403.89/content/browser/time_zone_monitor.cc 2015-07-23 21:34:14.959000000 +0200 @@ -22,24 +22,11 @@ TimeZoneMonitor::~TimeZoneMonitor() { void TimeZoneMonitor::NotifyRenderers() { DCHECK_CURRENTLY_ON(BrowserThread::UI); -#if defined(OS_CHROMEOS) // On CrOS, ICU's default tz is already set to a new zone. No // need to redetect it with detectHostTimeZone(). + + // Use CrOS code for icu53 which does not have detectHostTimeZone() scoped_ptr<icu::TimeZone> new_zone(icu::TimeZone::createDefault()); -#else - icu::TimeZone* new_zone = icu::TimeZone::detectHostTimeZone(); -#if defined(OS_LINUX) - // We get here multiple times on Linux per a single tz change, but - // want to update the ICU default zone and notify renderer only once. - scoped_ptr<icu::TimeZone> current_zone(icu::TimeZone::createDefault()); - if (*current_zone == *new_zone) { - VLOG(1) << "timezone already updated"; - delete new_zone; - return; - } -#endif - icu::TimeZone::adoptDefault(new_zone); -#endif icu::UnicodeString zone_id; std::string zone_id_str; new_zone->getID(zone_id).toUTF8String(zone_id_str);