| OLD | NEW |
| 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc
e-loading | 5 // See http://dev.chromium.org/developers/design-documents/multi-process-resourc
e-loading |
| 6 | 6 |
| 7 #include "chrome/browser/renderer_host/resource_dispatcher_host.h" | 7 #include "chrome/browser/renderer_host/resource_dispatcher_host.h" |
| 8 | 8 |
| 9 #include <vector> | 9 #include <vector> |
| 10 | 10 |
| (...skipping 241 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 252 } | 252 } |
| 253 | 253 |
| 254 void ResourceDispatcherHost::OnShutdown() { | 254 void ResourceDispatcherHost::OnShutdown() { |
| 255 DCHECK(MessageLoop::current() == io_loop_); | 255 DCHECK(MessageLoop::current() == io_loop_); |
| 256 is_shutdown_ = true; | 256 is_shutdown_ = true; |
| 257 STLDeleteValues(&pending_requests_); | 257 STLDeleteValues(&pending_requests_); |
| 258 // Make sure we shutdown the timer now, otherwise by the time our destructor | 258 // Make sure we shutdown the timer now, otherwise by the time our destructor |
| 259 // runs if the timer is still running the Task is deleted twice (once by | 259 // runs if the timer is still running the Task is deleted twice (once by |
| 260 // the MessageLoop and the second time by RepeatingTimer). | 260 // the MessageLoop and the second time by RepeatingTimer). |
| 261 update_load_states_timer_.Stop(); | 261 update_load_states_timer_.Stop(); |
| 262 // Let the WebKit thread know the IO thread is going away soon and that it |
| 263 // should prepare for its own shutdown soon after. |
| 264 webkit_thread_->Shutdown(); |
| 262 } | 265 } |
| 263 | 266 |
| 264 bool ResourceDispatcherHost::HandleExternalProtocol(int request_id, | 267 bool ResourceDispatcherHost::HandleExternalProtocol(int request_id, |
| 265 int process_id, | 268 int process_id, |
| 266 int route_id, | 269 int route_id, |
| 267 const GURL& url, | 270 const GURL& url, |
| 268 ResourceType::Type type, | 271 ResourceType::Type type, |
| 269 ResourceHandler* handler) { | 272 ResourceHandler* handler) { |
| 270 if (!ResourceType::IsFrame(type) || URLRequest::IsHandledURL(url)) | 273 if (!ResourceType::IsFrame(type) || URLRequest::IsHandledURL(url)) |
| 271 return false; | 274 return false; |
| (...skipping 1344 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1616 case ViewHostMsg_UploadProgress_ACK::ID: | 1619 case ViewHostMsg_UploadProgress_ACK::ID: |
| 1617 case ViewHostMsg_SyncLoad::ID: | 1620 case ViewHostMsg_SyncLoad::ID: |
| 1618 return true; | 1621 return true; |
| 1619 | 1622 |
| 1620 default: | 1623 default: |
| 1621 break; | 1624 break; |
| 1622 } | 1625 } |
| 1623 | 1626 |
| 1624 return false; | 1627 return false; |
| 1625 } | 1628 } |
| OLD | NEW |