diff options
author | mtomasz <mtomasz@chromium.org> | 2015-01-08 21:05:11 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-01-09 05:05:55 +0000 |
commit | 8b8e1fac50acf7f2245b96b1f30353fb41ac8de8 (patch) | |
tree | 779f9309193e13b808ca8d039906c65057c52cd6 | |
parent | 0d3e4fbd7d604683d977a9a6dc0a8f4f31f53047 (diff) | |
download | chromium_src-8b8e1fac50acf7f2245b96b1f30353fb41ac8de8.zip chromium_src-8b8e1fac50acf7f2245b96b1f30353fb41ac8de8.tar.gz chromium_src-8b8e1fac50acf7f2245b96b1f30353fb41ac8de8.tar.bz2 |
[fsp] Do not close files which failed to open for reading and writing.
This CL fixes the logic for detecting if a file was correctly opened in the
fsp::FileStreamReader and fsp::FileStreamWriter classes.
TEST=browser_test: *FileSystemProvider*, unit_test: *FileSystemProvider*FileStream*
BUG=447448
Review URL: https://codereview.chromium.org/814113007
Cr-Commit-Position: refs/heads/master@{#310713}
-rw-r--r-- | chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reader.cc | 4 | ||||
-rw-r--r-- | chrome/browser/chromeos/file_system_provider/fileapi/file_stream_writer.cc | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reader.cc b/chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reader.cc index b8f1332..1113165 100644 --- a/chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reader.cc +++ b/chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reader.cc @@ -161,7 +161,9 @@ class FileStreamReader::OperationRunner base::File::Error result) { DCHECK_CURRENTLY_ON(BrowserThread::UI); - file_handle_ = file_handle; + if (result == base::File::FILE_OK) + file_handle_ = file_handle; + BrowserThread::PostTask( BrowserThread::IO, FROM_HERE, base::Bind(callback, result)); } diff --git a/chrome/browser/chromeos/file_system_provider/fileapi/file_stream_writer.cc b/chrome/browser/chromeos/file_system_provider/fileapi/file_stream_writer.cc index 3290129..c8cd097 100644 --- a/chrome/browser/chromeos/file_system_provider/fileapi/file_stream_writer.cc +++ b/chrome/browser/chromeos/file_system_provider/fileapi/file_stream_writer.cc @@ -126,7 +126,9 @@ class FileStreamWriter::OperationRunner base::File::Error result) { DCHECK_CURRENTLY_ON(BrowserThread::UI); - file_handle_ = file_handle; + if (result == base::File::FILE_OK) + file_handle_ = file_handle; + BrowserThread::PostTask( BrowserThread::IO, FROM_HERE, base::Bind(callback, result)); } |