Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(61)

Unified Diff: chrome/service/service_ipc_server.cc

Issue 2802973003: Remove ScopedVector from chrome/ (Closed)
Patch Set: Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/service/service_ipc_server.cc
diff --git a/chrome/service/service_ipc_server.cc b/chrome/service/service_ipc_server.cc
index bcd3726080471a16f18a783504d2776ebecf2cd0..26e047a4ce9a59e2973d50ea08507c571c14e0cb 100644
--- a/chrome/service/service_ipc_server.cc
+++ b/chrome/service/service_ipc_server.cc
@@ -4,6 +4,8 @@
#include "chrome/service/service_ipc_server.h"
+#include <algorithm>
+
#include "base/metrics/histogram_delta_serialization.h"
#include "build/build_config.h"
#include "chrome/common/service_messages.h"
@@ -75,7 +77,7 @@ bool ServiceIPCServer::Send(IPC::Message* msg) {
void ServiceIPCServer::AddMessageHandler(
std::unique_ptr<MessageHandler> handler) {
- message_handlers_.push_back(handler.release());
+ message_handlers_.push_back(std::move(handler));
}
bool ServiceIPCServer::OnMessageReceived(const IPC::Message& msg) {
@@ -90,7 +92,11 @@ bool ServiceIPCServer::OnMessageReceived(const IPC::Message& msg) {
if (!handled) {
// Make a copy of the handlers to prevent modification during iteration.
- std::vector<MessageHandler*> temp_handlers = message_handlers_.get();
+ std::vector<MessageHandler*> temp_handlers(message_handlers_.size());
sky 2017/04/07 14:42:14 You've used a for loop for this functionality in o
leonhsl(Using Gerrit) 2017/04/10 08:33:06 Done. Sorry for this! I was writing such codes bef
+ std::transform(
+ message_handlers_.cbegin(), message_handlers_.cend(),
+ temp_handlers.begin(),
+ [](const std::unique_ptr<MessageHandler>& item) { return item.get(); });
for (auto* handler : temp_handlers) {
handled = handler->HandleMessage(msg);
if (handled)

Powered by Google App Engine
This is Rietveld 408576698