diff options
Diffstat (limited to 'webkit/fileapi/file_writer_delegate.cc')
-rw-r--r-- | webkit/fileapi/file_writer_delegate.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/webkit/fileapi/file_writer_delegate.cc b/webkit/fileapi/file_writer_delegate.cc index bb6becf..49a4ecd 100644 --- a/webkit/fileapi/file_writer_delegate.cc +++ b/webkit/fileapi/file_writer_delegate.cc @@ -5,6 +5,7 @@ #include "webkit/fileapi/file_writer_delegate.h" #include "base/message_loop.h" +#include "base/threading/thread_restrictions.h" #include "net/base/net_errors.h" #include "webkit/fileapi/file_system_operation.h" @@ -67,6 +68,9 @@ void FileWriterDelegate::OnSSLCertificateError( void FileWriterDelegate::OnResponseStarted(net::URLRequest* request) { DCHECK_EQ(request_, request); + // file_stream_->Seek() blocks the IO thread. + // See http://crbug.com/75548. + base::ThreadRestrictions::ScopedAllowIO allow_io; if (!request->status().is_success()) { OnError(base::PLATFORM_FILE_ERROR_FAILED); return; @@ -164,4 +168,3 @@ void FileWriterDelegate::OnProgress(int bytes_read, bool done) { } } // namespace fileapi - |