| Index: chrome/renderer/render_view.cc
|
| diff --git a/chrome/renderer/render_view.cc b/chrome/renderer/render_view.cc
|
| index 708453f72339b8d2ec91ea4e5caf626f5d4102e4..7c85b653ab5e83b68a98e95b55cdd97a249c4993 100644
|
| --- a/chrome/renderer/render_view.cc
|
| +++ b/chrome/renderer/render_view.cc
|
| @@ -197,7 +197,7 @@ RenderView::~RenderView() {
|
| RenderView* RenderView::Create(
|
| RenderThreadBase* render_thread,
|
| HWND parent_hwnd,
|
| - HANDLE modal_dialog_event,
|
| + base::WaitableEvent* modal_dialog_event,
|
| int32 opener_id,
|
| const WebPreferences& webkit_prefs,
|
| SharedRenderViewCounter* counter,
|
| @@ -245,7 +245,7 @@ void RenderView::JSOutOfMemory() {
|
| }
|
|
|
| void RenderView::Init(HWND parent_hwnd,
|
| - HANDLE modal_dialog_event,
|
| + base::WaitableEvent* modal_dialog_event,
|
| int32 opener_id,
|
| const WebPreferences& webkit_prefs,
|
| SharedRenderViewCounter* counter,
|
| @@ -287,7 +287,7 @@ void RenderView::Init(HWND parent_hwnd,
|
| }
|
|
|
| host_window_ = parent_hwnd;
|
| - modal_dialog_event_.Set(modal_dialog_event);
|
| + modal_dialog_event_.reset(modal_dialog_event);
|
|
|
| CommandLine command_line;
|
| enable_dom_automation_ =
|
| @@ -1648,7 +1648,7 @@ bool RenderView::RunJavaScriptMessage(int type,
|
| IPC::SyncMessage* msg = new ViewHostMsg_RunJavaScriptMessage(
|
| routing_id_, message, default_value, type, &success, result);
|
|
|
| - msg->set_pump_messages_event(modal_dialog_event_);
|
| + msg->set_pump_messages_event(modal_dialog_event_.get());
|
| Send(msg);
|
|
|
| return success;
|
| @@ -1669,7 +1669,7 @@ bool RenderView::RunBeforeUnloadConfirm(WebView* webview,
|
| IPC::SyncMessage* msg = new ViewHostMsg_RunBeforeUnloadConfirm(
|
| routing_id_, message, &success, &ignored_result);
|
|
|
| - msg->set_pump_messages_event(modal_dialog_event_);
|
| + msg->set_pump_messages_event(modal_dialog_event_.get());
|
| Send(msg);
|
|
|
| return success;
|
| @@ -1716,7 +1716,7 @@ void RenderView::ShowModalHTMLDialog(const GURL& url, int width, int height,
|
| IPC::SyncMessage* msg = new ViewHostMsg_ShowModalHTMLDialog(
|
| routing_id_, url, width, height, json_arguments, json_retval);
|
|
|
| - msg->set_pump_messages_event(modal_dialog_event_);
|
| + msg->set_pump_messages_event(modal_dialog_event_.get());
|
| Send(msg);
|
| }
|
|
|
| @@ -1803,8 +1803,10 @@ WebView* RenderView::CreateWebView(WebView* webview, bool user_gesture) {
|
|
|
| // The WebView holds a reference to this new RenderView
|
| const WebPreferences& prefs = webview->GetPreferences();
|
| + base::WaitableEvent* waitable_event =
|
| + new base::WaitableEvent(modal_dialog_event);
|
| RenderView* view = RenderView::Create(render_thread_,
|
| - NULL, modal_dialog_event, routing_id_,
|
| + NULL, waitable_event, routing_id_,
|
| prefs, shared_popup_counter_,
|
| routing_id);
|
| view->set_opened_by_user_gesture(user_gesture);
|
| @@ -1938,7 +1940,7 @@ void RenderView::RunModal(WebWidget* webwidget) {
|
|
|
| IPC::SyncMessage* msg = new ViewHostMsg_RunModal(routing_id_);
|
|
|
| - msg->set_pump_messages_event(modal_dialog_event_);
|
| + msg->set_pump_messages_event(modal_dialog_event_.get());
|
| Send(msg);
|
| }
|
|
|
|
|