Chromium Code Reviews| Index: src/js/i18n.js |
| diff --git a/src/js/i18n.js b/src/js/i18n.js |
| index b3a0f5b6ebd1783b8b884c462f207b82bcaf8cff..5836a05cae11709f6c14ee669c5b7f547eb19a2a 100644 |
| --- a/src/js/i18n.js |
| +++ b/src/js/i18n.js |
| @@ -1989,6 +1989,23 @@ var defaultObjects = { |
| 'dateformattime': UNDEFINED, |
| }; |
| +function clearDefaultObjects() { |
| + defaultObjects['dateformatall'] = UNDEFINED; |
| + defaultObjects['dateformatdate'] = UNDEFINED; |
| + defaultObjects['dateformattime'] = UNDEFINED; |
| +} |
| + |
| +var date_cache_version = 0; |
| + |
| +function checkDateCacheCurrent() { |
| + var date_cache_version_holder = %DateCacheVersion(); |
|
jungshik at Google
2016/05/19 23:11:58
nit: What's returned by DateCacheVersion is not a
pgorszkowski
2016/05/20 13:14:56
Done.
|
| + if (date_cache_version_holder == date_cache_version) { |
| + return; |
| + } |
| + date_cache_version = date_cache_version_holder; |
| + |
| + clearDefaultObjects(); |
| +} |
| /** |
| * Returns cached or newly created instance of a given service. |
| @@ -1997,6 +2014,7 @@ var defaultObjects = { |
| function cachedOrNewService(service, locales, options, defaults) { |
| var useOptions = (IS_UNDEFINED(defaults)) ? options : defaults; |
| if (IS_UNDEFINED(locales) && IS_UNDEFINED(options)) { |
| + checkDateCacheCurrent(); |
| if (IS_UNDEFINED(defaultObjects[service])) { |
| defaultObjects[service] = new savedObjects[service](locales, useOptions); |
| } |