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

Unified Diff: content/browser/frame_host/cross_site_transferring_request.cc

Issue 2397893002: Revert the merge of CrossSiteResourceHandler and NavigationResourceThrottle. (Closed)
Patch Set: Add back initialization of started_from_context_menu_. Created 4 years, 2 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/browser/frame_host/cross_site_transferring_request.cc
diff --git a/content/browser/frame_host/cross_site_transferring_request.cc b/content/browser/frame_host/cross_site_transferring_request.cc
new file mode 100644
index 0000000000000000000000000000000000000000..1a34fe721582c30889c6beaac679bce5fd2e3b07
--- /dev/null
+++ b/content/browser/frame_host/cross_site_transferring_request.cc
@@ -0,0 +1,46 @@
+// Copyright 2014 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.
+
+#include "content/browser/frame_host/cross_site_transferring_request.h"
+
+#include "base/logging.h"
+#include "content/browser/loader/cross_site_resource_handler.h"
+#include "content/browser/loader/resource_dispatcher_host_impl.h"
+#include "content/public/browser/browser_thread.h"
+
+namespace content {
+
+namespace {
+
+void CancelRequestOnIOThread(GlobalRequestID global_request_id) {
+ DCHECK_CURRENTLY_ON(BrowserThread::IO);
+
+ ResourceDispatcherHostImpl::Get()->CancelTransferringNavigation(
+ global_request_id);
+}
+
+} // namespace
+
+CrossSiteTransferringRequest::CrossSiteTransferringRequest(
+ GlobalRequestID global_request_id)
+ : global_request_id_(global_request_id) {
+ DCHECK(global_request_id_ != GlobalRequestID());
+}
+
+CrossSiteTransferringRequest::~CrossSiteTransferringRequest() {
+ if (global_request_id_ == GlobalRequestID())
+ return;
+ BrowserThread::PostTask(
+ BrowserThread::IO,
+ FROM_HERE,
+ base::Bind(&CancelRequestOnIOThread, global_request_id_));
+}
+
+void CrossSiteTransferringRequest::ReleaseRequest() {
+ DCHECK_NE(-1, global_request_id_.child_id);
+ DCHECK_NE(-1, global_request_id_.request_id);
+ global_request_id_ = GlobalRequestID();
+}
+
+} // namespace content

Powered by Google App Engine
This is Rietveld 408576698