diff options
author | battre@chromium.org <battre@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-13 20:35:35 +0000 |
---|---|---|
committer | battre@chromium.org <battre@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-01-13 20:35:35 +0000 |
commit | 9045b8828eebdd69aabc29af2ef45337f9cb213f (patch) | |
tree | 73b607f60c90b622f74db855d02b21fec75f6df6 /net/proxy | |
parent | 6c6abcae8d0f1a0cbb468ec1251529cb866ff2b1 (diff) | |
download | chromium_src-9045b8828eebdd69aabc29af2ef45337f9cb213f.zip chromium_src-9045b8828eebdd69aabc29af2ef45337f9cb213f.tar.gz chromium_src-9045b8828eebdd69aabc29af2ef45337f9cb213f.tar.bz2 |
Prevent callbacks after URLRequest/URLRequestJob have been canceled/completed/killed.
With this CL, URLRequestJobs notify their NetworkDelegate when they are being destroyed to insure that the NetworkDelegate does not access any of their variables or call callbacks.
Also the WebRequest API does not execute any callbacks if they URLRequest has informed the API that the Request has been completed or canceled.
Both cases could happen in rare race conditions.
BUG=108968
TEST=no
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=117342
Review URL: http://codereview.chromium.org/9147018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@117685 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'net/proxy')
-rw-r--r-- | net/proxy/network_delegate_error_observer_unittest.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/proxy/network_delegate_error_observer_unittest.cc b/net/proxy/network_delegate_error_observer_unittest.cc index 9eb9204..b64e9bf 100644 --- a/net/proxy/network_delegate_error_observer_unittest.cc +++ b/net/proxy/network_delegate_error_observer_unittest.cc @@ -1,4 +1,4 @@ -// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Copyright (c) 2012 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. @@ -49,7 +49,7 @@ class TestNetworkDelegate : public net::NetworkDelegate { virtual void OnResponseStarted(URLRequest* request) OVERRIDE {} virtual void OnRawBytesRead(const URLRequest& request, int bytes_read) OVERRIDE {} - virtual void OnCompleted(URLRequest* request) OVERRIDE {} + virtual void OnCompleted(URLRequest* request, bool started) OVERRIDE {} virtual void OnURLRequestDestroyed(URLRequest* request) OVERRIDE {} virtual void OnPACScriptError(int line_number, |