summaryrefslogtreecommitdiffstats
path: root/storage/browser
diff options
context:
space:
mode:
Diffstat (limited to 'storage/browser')
-rw-r--r--storage/browser/fileapi/file_stream_reader.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/storage/browser/fileapi/file_stream_reader.cc b/storage/browser/fileapi/file_stream_reader.cc
index cb87ecb..00d3e22 100644
--- a/storage/browser/fileapi/file_stream_reader.cc
+++ b/storage/browser/fileapi/file_stream_reader.cc
@@ -8,13 +8,18 @@
namespace storage {
+// Int64->double->int64 conversions (e.g. through Blink) may lose some
+// precision in the microsecond range. Allow 10us delta.
+const int kModificationTimeAllowedDeltaMicroseconds = 10;
+
// Verify if the underlying file has not been modified.
bool FileStreamReader::VerifySnapshotTime(
const base::Time& expected_modification_time,
const base::File::Info& file_info) {
return expected_modification_time.is_null() ||
- expected_modification_time.ToTimeT() ==
- file_info.last_modified.ToTimeT();
+ (expected_modification_time - file_info.last_modified)
+ .magnitude()
+ .InMicroseconds() < kModificationTimeAllowedDeltaMicroseconds;
}
} // namespace storage