diff options
author | skerner@chromium.org <skerner@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-24 17:38:24 +0000 |
---|---|---|
committer | skerner@chromium.org <skerner@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-03-24 17:38:24 +0000 |
commit | dc971bf9d33739884185bf29903eb52f107f4e5c (patch) | |
tree | 45fca8205cdf925310f18ec3bf2e3da44a047233 /chrome/browser/extensions | |
parent | 6bf115b22a259d1a86fb405320c4ce793d583e57 (diff) | |
download | chromium_src-dc971bf9d33739884185bf29903eb52f107f4e5c.zip chromium_src-dc971bf9d33739884185bf29903eb52f107f4e5c.tar.gz chromium_src-dc971bf9d33739884185bf29903eb52f107f4e5c.tar.bz2 |
History APIs that parse a time as a number of milliseconds need to allow integer numbers.
BUG=38994
TEST=ExtensionApiTest.FLAKY_History
Review URL: http://codereview.chromium.org/1221001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@42486 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/extensions')
-rw-r--r-- | chrome/browser/extensions/extension_history_api.cc | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/chrome/browser/extensions/extension_history_api.cc b/chrome/browser/extensions/extension_history_api.cc index 08c6cec..7edbf14 100644 --- a/chrome/browser/extensions/extension_history_api.cc +++ b/chrome/browser/extensions/extension_history_api.cc @@ -168,13 +168,16 @@ bool HistoryFunction::GetUrlFromValue(Value* value, GURL* url) { } bool HistoryFunction::GetTimeFromValue(Value* value, base::Time* time) { - double ms_from_epoch = 0; + double ms_from_epoch = 0.0; if (!value->GetAsReal(&ms_from_epoch)) { - return false; + int ms_from_epoch_as_int = 0; + if (!value->GetAsInteger(&ms_from_epoch_as_int)) + return false; + ms_from_epoch = static_cast<double>(ms_from_epoch_as_int); } // The history service has seconds resolution, while javascript Date() has // milliseconds resolution. - double seconds_from_epoch = ms_from_epoch / 1000; + double seconds_from_epoch = ms_from_epoch / 1000.0; *time = base::Time::FromDoubleT(seconds_from_epoch); return true; } |