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

Unified Diff: content/browser/renderer_host/p2p/socket_dispatcher_host.cc

Issue 2314833002: Remove some uses of stl_util's STLDeleteContainerPointers. (Closed)
Patch Set: cleanup Created 4 years, 3 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: content/browser/renderer_host/p2p/socket_dispatcher_host.cc
diff --git a/content/browser/renderer_host/p2p/socket_dispatcher_host.cc b/content/browser/renderer_host/p2p/socket_dispatcher_host.cc
index edf3d2f810e61485c48540bd45f4b05a3dce5181..afcf6f73013d18a27711a6d3d2994c61e0f69b2a 100644
--- a/content/browser/renderer_host/p2p/socket_dispatcher_host.cc
+++ b/content/browser/renderer_host/p2p/socket_dispatcher_host.cc
@@ -6,7 +6,10 @@
#include <stddef.h>
+#include <algorithm>
+
#include "base/bind.h"
+#include "base/memory/ptr_util.h"
#include "content/browser/bad_message.h"
#include "content/browser/renderer_host/p2p/socket_host.h"
#include "content/common/p2p_messages.h"
@@ -122,7 +125,6 @@ void P2PSocketDispatcherHost::OnChannelClosing() {
// Since the IPC sender is gone, close pending connections.
sockets_.clear();
- base::STLDeleteContainerPointers(dns_requests_.begin(), dns_requests_.end());
dns_requests_.clear();
if (monitoring_networks_) {
@@ -226,12 +228,13 @@ void P2PSocketDispatcherHost::OnStopNetworkNotifications() {
void P2PSocketDispatcherHost::OnGetHostAddress(const std::string& host_name,
int32_t request_id) {
- DnsRequest* request = new DnsRequest(request_id,
- resource_context_->GetHostResolver());
- dns_requests_.insert(request);
- request->Resolve(host_name, base::Bind(
- &P2PSocketDispatcherHost::OnAddressResolved,
- base::Unretained(this), request));
+ std::unique_ptr<DnsRequest> request = base::MakeUnique<DnsRequest>(
+ request_id, resource_context_->GetHostResolver());
+ DnsRequest* request_ptr = request.get();
+ dns_requests_.insert(std::move(request));
+ request_ptr->Resolve(host_name,
+ base::Bind(&P2PSocketDispatcherHost::OnAddressResolved,
+ base::Unretained(this), request_ptr));
}
void P2PSocketDispatcherHost::OnCreateSocket(
@@ -393,8 +396,11 @@ void P2PSocketDispatcherHost::OnAddressResolved(
const net::IPAddressList& addresses) {
Send(new P2PMsg_GetHostAddressResult(request->request_id(), addresses));
- dns_requests_.erase(request);
- delete request;
+ dns_requests_.erase(
+ std::find_if(dns_requests_.begin(), dns_requests_.end(),
+ [request](const std::unique_ptr<DnsRequest>& ptr) {
+ return ptr.get() == request;
+ }));
}
void P2PSocketDispatcherHost::StopRtpDumpOnIOThread(bool incoming,
« no previous file with comments | « content/browser/renderer_host/p2p/socket_dispatcher_host.h ('k') | content/public/test/test_navigation_observer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698