| Index: headless/lib/browser/headless_devtools_client_impl.cc
|
| diff --git a/headless/lib/browser/headless_devtools_client_impl.cc b/headless/lib/browser/headless_devtools_client_impl.cc
|
| index 78f4dade292708d1e7ee55e552b0fe115f5c551a..2f662bb669550ec6b7ff2e075844fddebd0c4f66 100644
|
| --- a/headless/lib/browser/headless_devtools_client_impl.cc
|
| +++ b/headless/lib/browser/headless_devtools_client_impl.cc
|
| @@ -102,17 +102,18 @@ bool HeadlessDevToolsClientImpl::DispatchMessageReply(
|
| NOTREACHED() << "Unexpected reply";
|
| return false;
|
| }
|
| - if (!it->second.callback_with_result.is_null()) {
|
| + Callback callback = std::move(it->second);
|
| + pending_messages_.erase(it);
|
| + if (!callback.callback_with_result.is_null()) {
|
| const base::DictionaryValue* result_dict;
|
| if (!message_dict.GetDictionary("result", &result_dict)) {
|
| NOTREACHED() << "Badly formed reply result";
|
| return false;
|
| }
|
| - it->second.callback_with_result.Run(*result_dict);
|
| - } else if (!it->second.callback.is_null()) {
|
| - it->second.callback.Run();
|
| + callback.callback_with_result.Run(*result_dict);
|
| + } else if (!callback.callback.is_null()) {
|
| + callback.callback.Run();
|
| }
|
| - pending_messages_.erase(it);
|
| return true;
|
| }
|
|
|
|
|