Index: content/browser/renderer_host/render_process_host_impl.h |
diff --git a/content/browser/renderer_host/render_process_host_impl.h b/content/browser/renderer_host/render_process_host_impl.h |
index a0be1cf20a767c45a6879480478f803a08432735..e0e4f5be283a94ea240c86174f5eed8908cef2b6 100644 |
--- a/content/browser/renderer_host/render_process_host_impl.h |
+++ b/content/browser/renderer_host/render_process_host_impl.h |
@@ -17,6 +17,7 @@ |
#include "content/browser/power_monitor_message_broadcaster.h" |
#include "content/common/content_export.h" |
#include "content/public/browser/gpu_data_manager_observer.h" |
+#include "content/public/browser/navigation_controller.h" |
#include "content/public/browser/render_process_host.h" |
#include "ipc/ipc_channel_proxy.h" |
#include "ipc/ipc_platform_file.h" |
@@ -170,6 +171,11 @@ class CONTENT_EXPORT RenderProcessHostImpl |
scoped_refptr<ScreenOrientationDispatcherHost> |
screen_orientation_dispatcher_host() const; |
+ // Used to extend the lifetime of the sessions until the render view |
+ // in the renderer is fully closed. |
+ void ReleaseOnCloseAck(const SessionStorageNamespaceMap& sessions, |
+ int view_route_id); |
+ |
// Register/unregister the host identified by the host id in the global host |
// list. |
static void RegisterHost(int host_id, RenderProcessHost* host); |
@@ -280,6 +286,7 @@ class CONTENT_EXPORT RenderProcessHostImpl |
void SuddenTerminationChanged(bool enabled); |
void OnUserMetricsRecordAction(const std::string& action); |
void OnSavedPageAsMHTML(int job_id, int64 mhtml_file_size); |
+ void OnCloseACK(int old_route_id); |
// CompositorSurfaceBuffersSwapped handler when there's no RWH. |
void OnCompositorSurfaceBuffersSwappedNoHost( |
@@ -423,6 +430,9 @@ class CONTENT_EXPORT RenderProcessHostImpl |
// Records the time when the process starts surviving for workers for UMA. |
base::TimeTicks survive_for_worker_start_time_; |
+ std::map<int, SessionStorageNamespaceMap> |
+ session_storage_namespaces_awaiting_close_; |
+ |
base::WeakPtrFactory<RenderProcessHostImpl> weak_factory_; |
DISALLOW_COPY_AND_ASSIGN(RenderProcessHostImpl); |