summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authormkwst@chromium.org <mkwst@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-03 08:15:32 +0000
committermkwst@chromium.org <mkwst@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-03 08:15:32 +0000
commitbe87a32aa8e0728798c37614ab8eeddd506c7bda (patch)
tree89473149342a7b118f5b24b0ca5ab70865988e63 /net
parenta4f98e2023fed3f3f697b837ccca6c98940c6526 (diff)
downloadchromium_src-be87a32aa8e0728798c37614ab8eeddd506c7bda.zip
chromium_src-be87a32aa8e0728798c37614ab8eeddd506c7bda.tar.gz
chromium_src-be87a32aa8e0728798c37614ab8eeddd506c7bda.tar.bz2
Revert 120290 - Revert 120283 - net: Use ClosePlatformFile() instead of close/CloseHandle().
TBR=mkwst@chromium.org,satorux@chromium.org Reverting my revert: this commit wasn't the culprit. Review URL: https://chromiumcodereview.appspot.com/9320060 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120292 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net')
-rw-r--r--net/base/file_stream_posix.cc3
-rw-r--r--net/base/file_stream_win.cc3
-rw-r--r--net/url_request/url_request_file_job.cc3
3 files changed, 6 insertions, 3 deletions
diff --git a/net/base/file_stream_posix.cc b/net/base/file_stream_posix.cc
index 502d0f1..a094eed 100644
--- a/net/base/file_stream_posix.cc
+++ b/net/base/file_stream_posix.cc
@@ -353,9 +353,8 @@ void FileStream::Close() {
async_context_.reset();
if (file_ != base::kInvalidPlatformFileValue) {
- if (close(file_) != 0) {
+ if (!base::ClosePlatformFile(file_))
NOTREACHED();
- }
file_ = base::kInvalidPlatformFileValue;
bound_net_log_.EndEvent(net::NetLog::TYPE_FILE_STREAM_OPEN, NULL);
diff --git a/net/base/file_stream_win.cc b/net/base/file_stream_win.cc
index 1f7ecbf..9e1f686f 100644
--- a/net/base/file_stream_win.cc
+++ b/net/base/file_stream_win.cc
@@ -181,7 +181,8 @@ void FileStream::Close() {
async_context_.reset();
if (file_ != INVALID_HANDLE_VALUE) {
- CloseHandle(file_);
+ if (!base::ClosePlatformFile(file_))
+ NOTREACHED();
file_ = INVALID_HANDLE_VALUE;
bound_net_log_.EndEvent(net::NetLog::TYPE_FILE_STREAM_OPEN, NULL);
diff --git a/net/url_request/url_request_file_job.cc b/net/url_request/url_request_file_job.cc
index d8187ab..8f32750 100644
--- a/net/url_request/url_request_file_job.cc
+++ b/net/url_request/url_request_file_job.cc
@@ -158,6 +158,9 @@ void URLRequestFileJob::Start() {
}
void URLRequestFileJob::Kill() {
+ // URL requests should not block on the disk!
+ // http://code.google.com/p/chromium/issues/detail?id=59849
+ base::ThreadRestrictions::ScopedAllowIO allow_io;
stream_.Close();
if (async_resolver_) {