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

Side by Side Diff: content/public/test/mock_render_process_host.cc

Issue 2749203002: Remove ScopedVector from content/. (Closed)
Patch Set: Remove ScopedVector from content/. Created 3 years, 9 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/public/test/mock_render_process_host.h" 5 #include "content/public/test/mock_render_process_host.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
11 #include "base/lazy_instance.h" 11 #include "base/lazy_instance.h"
12 #include "base/location.h" 12 #include "base/location.h"
13 #include "base/memory/ptr_util.h"
13 #include "base/process/process_handle.h" 14 #include "base/process/process_handle.h"
14 #include "base/single_thread_task_runner.h" 15 #include "base/single_thread_task_runner.h"
15 #include "base/threading/thread_task_runner_handle.h" 16 #include "base/threading/thread_task_runner_handle.h"
16 #include "base/time/time.h" 17 #include "base/time/time.h"
17 #include "content/browser/child_process_security_policy_impl.h" 18 #include "content/browser/child_process_security_policy_impl.h"
18 #include "content/browser/renderer_host/render_process_host_impl.h" 19 #include "content/browser/renderer_host/render_process_host_impl.h"
19 #include "content/browser/renderer_host/render_view_host_impl.h" 20 #include "content/browser/renderer_host/render_view_host_impl.h"
20 #include "content/browser/renderer_host/render_widget_host_impl.h" 21 #include "content/browser/renderer_host/render_widget_host_impl.h"
21 #include "content/common/child_process_host_impl.h" 22 #include "content/common/child_process_host_impl.h"
22 #include "content/common/frame_messages.h" 23 #include "content/common/frame_messages.h"
(...skipping 347 matching lines...) Expand 10 before | Expand all | Expand 10 after
370 return false; 371 return false;
371 } 372 }
372 373
373 void MockRenderProcessHost::OnChannelConnected(int32_t peer_pid) {} 374 void MockRenderProcessHost::OnChannelConnected(int32_t peer_pid) {}
374 375
375 MockRenderProcessHostFactory::MockRenderProcessHostFactory() {} 376 MockRenderProcessHostFactory::MockRenderProcessHostFactory() {}
376 377
377 MockRenderProcessHostFactory::~MockRenderProcessHostFactory() { 378 MockRenderProcessHostFactory::~MockRenderProcessHostFactory() {
378 // Detach this object from MockRenderProcesses to prevent STLDeleteElements() 379 // Detach this object from MockRenderProcesses to prevent STLDeleteElements()
379 // from calling MockRenderProcessHostFactory::Remove(). 380 // from calling MockRenderProcessHostFactory::Remove().
380 for (ScopedVector<MockRenderProcessHost>::iterator it = processes_.begin(); 381 for (const auto& process : processes_)
381 it != processes_.end(); ++it) { 382 process->SetFactory(nullptr);
382 (*it)->SetFactory(NULL);
383 }
384 } 383 }
385 384
386 RenderProcessHost* MockRenderProcessHostFactory::CreateRenderProcessHost( 385 RenderProcessHost* MockRenderProcessHostFactory::CreateRenderProcessHost(
387 BrowserContext* browser_context, 386 BrowserContext* browser_context,
388 SiteInstance* site_instance) const { 387 SiteInstance* site_instance) const {
389 MockRenderProcessHost* host = new MockRenderProcessHost(browser_context); 388 processes_.push_back(
390 if (host) { 389 base::MakeUnique<MockRenderProcessHost>(browser_context));
391 processes_.push_back(host); 390 processes_.back()->SetFactory(this);
392 host->SetFactory(this); 391 return processes_.back().get();
393 }
394 return host;
395 } 392 }
396 393
397 void MockRenderProcessHostFactory::Remove(MockRenderProcessHost* host) const { 394 void MockRenderProcessHostFactory::Remove(MockRenderProcessHost* host) const {
398 for (ScopedVector<MockRenderProcessHost>::iterator it = processes_.begin(); 395 for (auto it = processes_.begin(); it != processes_.end(); ++it) {
399 it != processes_.end(); ++it) { 396 if (it->get() == host) {
400 if (*it == host) { 397 it->release();
401 processes_.weak_erase(it); 398 processes_.erase(it);
402 break; 399 break;
403 } 400 }
404 } 401 }
405 } 402 }
406 403
407 } // namespace content 404 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698