Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(271)

Unified Diff: content/common/resource_dispatcher.h

Issue 7601011: Fix resource loads dropped when iframe is transferred to a new window and original window closes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix crash in tests (RenderThread::current() is NULL) Created 9 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/common/resource_dispatcher.h
diff --git a/content/common/resource_dispatcher.h b/content/common/resource_dispatcher.h
index 15d7b1fc02ac85e7b1e237d3f2d1019d24ca23ef..4682e08689ca15d13c13d96f979f9c42c28da5b1 100644
--- a/content/common/resource_dispatcher.h
+++ b/content/common/resource_dispatcher.h
@@ -40,7 +40,8 @@ class ResourceDispatcher : public IPC::Channel::Listener {
// Adds a request from the pending_requests_ list, returning the new
// requests' ID
- int AddPendingRequest(webkit_glue::ResourceLoaderBridge::Peer* callback,
+ int AddPendingRequest(int webkit_request_id,
+ webkit_glue::ResourceLoaderBridge::Peer* callback,
ResourceType::Type resource_type,
const GURL& request_url);
@@ -51,6 +52,9 @@ class ResourceDispatcher : public IPC::Channel::Listener {
// Cancels a request in the pending_requests_ list.
void CancelPendingRequest(int routing_id, int request_id);
+ // Updates the request that was transferred to a new page.
+ void TransferRequestToNewPage(int webkit_identifier, int new_routing_id);
+
IPC::Message::Sender* message_sender() const {
return message_sender_;
}
@@ -70,15 +74,18 @@ class ResourceDispatcher : public IPC::Channel::Listener {
typedef std::deque<IPC::Message*> MessageQueue;
struct PendingRequestInfo {
PendingRequestInfo() { }
- PendingRequestInfo(webkit_glue::ResourceLoaderBridge::Peer* peer,
+ PendingRequestInfo(int webkit_request_id,
+ webkit_glue::ResourceLoaderBridge::Peer* peer,
ResourceType::Type resource_type,
const GURL& request_url)
- : peer(peer),
+ : webkit_request_id(webkit_request_id),
+ peer(peer),
resource_type(resource_type),
is_deferred(false),
url(request_url) {
}
~PendingRequestInfo() { }
+ int webkit_request_id;
webkit_glue::ResourceLoaderBridge::Peer* peer;
ResourceType::Type resource_type;
MessageQueue deferred_message_queue;
« no previous file with comments | « content/browser/renderer_host/resource_dispatcher_host_request_info.h ('k') | content/common/resource_dispatcher.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698