| Index: content/browser/devtools/render_frame_devtools_agent_host.cc
|
| diff --git a/content/browser/devtools/render_frame_devtools_agent_host.cc b/content/browser/devtools/render_frame_devtools_agent_host.cc
|
| index cc06aa8418003421d082b02d09cc6e579c5d2b25..c8bd69438eef9499073e2a3cb0d4d58e890741d8 100644
|
| --- a/content/browser/devtools/render_frame_devtools_agent_host.cc
|
| +++ b/content/browser/devtools/render_frame_devtools_agent_host.cc
|
| @@ -242,13 +242,15 @@ void RenderFrameDevToolsAgentHost::FrameHostHolder::SendMessageToClient(
|
| int session_id,
|
| const std::string& message) {
|
| int id = chunk_processor_.last_call_id();
|
| + PendingMessage sent_message = sent_messages_[id];
|
| + sent_messages_.erase(id);
|
| if (suspended_) {
|
| - sent_messages_whose_reply_came_while_suspended_[id] = sent_messages_[id];
|
| + sent_messages_whose_reply_came_while_suspended_[id] = sent_message;
|
| pending_messages_.push_back(std::make_pair(session_id, message));
|
| } else {
|
| agent_->SendMessageToClient(session_id, message);
|
| + // |this| may be deleted at this point.
|
| }
|
| - sent_messages_.erase(id);
|
| }
|
|
|
| void RenderFrameDevToolsAgentHost::FrameHostHolder::Suspend() {
|
|
|