Index: net/proxy/multi_threaded_proxy_resolver.cc |
=================================================================== |
--- net/proxy/multi_threaded_proxy_resolver.cc (revision 71199) |
+++ net/proxy/multi_threaded_proxy_resolver.cc (working copy) |
@@ -8,6 +8,7 @@ |
#include "base/string_util.h" |
#include "base/stringprintf.h" |
#include "base/threading/thread.h" |
+#include "base/threading/thread_restrictions.h" |
#include "net/base/net_errors.h" |
#include "net/base/net_log.h" |
#include "net/proxy/proxy_info.h" |
@@ -336,9 +337,14 @@ |
// to avoid deadlocks. |
resolver_->Shutdown(); |
- // Join the worker thread. |
- thread_.reset(); |
+ { |
+ // See http://crbug.com/69710. |
+ base::ThreadRestrictions::ScopedAllowIO allow_io; |
+ // Join the worker thread. |
+ thread_.reset(); |
+ } |
+ |
// Cancel any outstanding job. |
if (outstanding_job_) { |
outstanding_job_->Cancel(); |