diff options
author | Allan Sandfeld Jensen <allan.jensen@theqtcompany.com> | 2015-06-18 14:10:49 +0200 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> | 2015-06-18 13:53:24 +0000 |
commit | 813fbf95af77a531c57a8c497345ad2c61d475b3 (patch) | |
tree | 821b2c8de8365f21b6c9ba17a236fb3006a1d506 /chromium/base/files/file.cc | |
parent | af6588f8d723931a298c995fa97259bb7f7deb55 (diff) | |
download | qtwebengine-chromium-813fbf95af77a531c57a8c497345ad2c61d475b3.tar.gz |
BASELINE: Update chromium to 44.0.2403.47
Change-Id: Ie056fedba95cf5e5c76b30c4b2c80fca4764aa2f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Diffstat (limited to 'chromium/base/files/file.cc')
-rw-r--r-- | chromium/base/files/file.cc | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/chromium/base/files/file.cc b/chromium/base/files/file.cc index ea8dbf27ac1..58f80c52322 100644 --- a/chromium/base/files/file.cc +++ b/chromium/base/files/file.cc @@ -4,6 +4,9 @@ #include "base/files/file.h" #include "base/files/file_path.h" +#include "base/files/file_tracing.h" +#include "base/metrics/histogram.h" +#include "base/timer/elapsed_timer.h" namespace base { @@ -23,11 +26,11 @@ File::File() } #if !defined(OS_NACL) -File::File(const FilePath& name, uint32 flags) +File::File(const FilePath& path, uint32 flags) : error_details_(FILE_OK), created_(false), async_(false) { - Initialize(name, flags); + Initialize(path, flags); } #endif @@ -49,6 +52,7 @@ File::File(Error error_details) File::File(RValue other) : file_(other.object->TakePlatformFile()), + path_(other.object->path_), error_details_(other.object->error_details()), created_(other.object->created()), async_(other.object->async_) { @@ -63,6 +67,7 @@ File& File::operator=(RValue other) { if (this != other.object) { Close(); SetPlatformFile(other.object->TakePlatformFile()); + path_ = other.object->path_; error_details_ = other.object->error_details(); created_ = other.object->created(); async_ = other.object->async_; @@ -71,12 +76,14 @@ File& File::operator=(RValue other) { } #if !defined(OS_NACL) -void File::Initialize(const FilePath& name, uint32 flags) { - if (name.ReferencesParent()) { +void File::Initialize(const FilePath& path, uint32 flags) { + if (path.ReferencesParent()) { error_details_ = FILE_ERROR_ACCESS_DENIED; return; } - InitializeUnsafe(name, flags); + path_ = path; + SCOPED_FILE_TRACE("Initialize"); + DoInitialize(flags); } #endif @@ -124,4 +131,12 @@ std::string File::ErrorToString(Error error) { return ""; } +bool File::Flush() { + ElapsedTimer timer; + SCOPED_FILE_TRACE("Flush"); + bool return_value = DoFlush(); + UMA_HISTOGRAM_TIMES("PlatformFile.FlushTime", timer.Elapsed()); + return return_value; +} + } // namespace base |