Index: extensions/renderer/wake_event_page.cc |
diff --git a/extensions/renderer/wake_event_page.cc b/extensions/renderer/wake_event_page.cc |
index fcf15f6006e711bfced8dfaa82a4f03615a906bb..221b3a1284df46fb66ece8028087307d9808ee5d 100644 |
--- a/extensions/renderer/wake_event_page.cc |
+++ b/extensions/renderer/wake_event_page.cc |
@@ -13,6 +13,7 @@ |
#include "base/lazy_instance.h" |
#include "base/logging.h" |
#include "base/macros.h" |
+#include "base/memory/ptr_util.h" |
#include "content/public/child/worker_thread.h" |
#include "content/public/renderer/render_thread.h" |
#include "extensions/common/extension_messages.h" |
@@ -160,10 +161,10 @@ void WakeEventPage::MakeRequest(const std::string& extension_id, |
static base::AtomicSequenceNumber sequence_number; |
int request_id = sequence_number.GetNext(); |
{ |
- std::unique_ptr<RequestData> request_data( |
- new RequestData(content::WorkerThread::GetCurrentId(), on_response)); |
+ std::unique_ptr<RequestData> request_data = base::MakeUnique<RequestData>( |
+ content::WorkerThread::GetCurrentId(), on_response); |
base::AutoLock lock(requests_lock_); |
- requests_.set(request_id, std::move(request_data)); |
+ requests_[request_id] = std::move(request_data); |
Devlin
2016/12/28 23:34:32
optional nit: maybe just construct here?
Avi (use Gerrit)
2016/12/29 00:36:30
Done.
|
} |
message_filter_->Send( |
new ExtensionHostMsg_WakeEventPage(request_id, extension_id)); |
@@ -183,7 +184,9 @@ void WakeEventPage::OnWakeEventPageResponse(int request_id, bool success) { |
std::unique_ptr<RequestData> request_data; |
{ |
base::AutoLock lock(requests_lock_); |
- request_data = requests_.take(request_id); |
Avi (use Gerrit)
2016/12/28 22:51:19
FYI, this seems to have been a bug. It removes the
Devlin
2016/12/28 23:34:32
Ah, that is bad. It almost certainly should have
|
+ auto it = requests_.find(request_id); |
+ request_data = std::move(it->second); |
+ requests_.erase(it); |
} |
CHECK(request_data) << "No request with ID " << request_id; |
Devlin
2016/12/28 23:34:32
Maybe move this to be:
CHECK(it != requests_.end()
Avi (use Gerrit)
2016/12/29 00:36:30
Done.
|
if (request_data->thread_id == 0) { |