| // Copyright 2014 The Chromium Authors. All rights reserved. | 
 | // Use of this source code is governed by a BSD-style license that can be | 
 | // found in the LICENSE file. | 
 |  | 
 | #include "storage/browser/fileapi/file_stream_reader.h" | 
 |  | 
 | #include <stdint.h> | 
 |  | 
 | #include "base/time/time.h" | 
 |  | 
 | namespace storage { | 
 |  | 
 | // Int64->double->int64_t 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 - file_info.last_modified) | 
 |                  .magnitude() | 
 |                  .InMicroseconds() < kModificationTimeAllowedDeltaMicroseconds; | 
 | } | 
 |  | 
 | }  // namespace storage |