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

Side by Side Diff: content/renderer/render_thread_impl.cc

Issue 2054303002: Kill child processes on bad Mojo messages (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@bad-message
Patch Set: . Created 4 years, 6 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/renderer/render_thread_impl.h" 5 #include "content/renderer/render_thread_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 #include <map> 9 #include <map>
10 #include <utility> 10 #include <utility>
(...skipping 802 matching lines...) Expand 10 before | Expand all | Expand 10 after
813 are_image_decode_tasks_enabled_ = true; 813 are_image_decode_tasks_enabled_ = true;
814 814
815 categorized_worker_pool_->Start(num_raster_threads); 815 categorized_worker_pool_->Start(num_raster_threads);
816 816
817 // TODO(boliu): In single process, browser main loop should set up the 817 // TODO(boliu): In single process, browser main loop should set up the
818 // discardable memory manager, and should skip this if kSingleProcess. 818 // discardable memory manager, and should skip this if kSingleProcess.
819 // See crbug.com/503724. 819 // See crbug.com/503724.
820 base::DiscardableMemoryAllocator::SetInstance( 820 base::DiscardableMemoryAllocator::SetInstance(
821 ChildThreadImpl::discardable_shared_memory_manager()); 821 ChildThreadImpl::discardable_shared_memory_manager());
822 822
823 GetContentClient()->renderer()->RegisterProcessMojoServices(
824 service_registry());
825
823 service_registry()->AddService(base::Bind(CreateRenderFrameSetup)); 826 service_registry()->AddService(base::Bind(CreateRenderFrameSetup));
824 service_registry()->AddService(base::Bind(CreateEmbeddedWorkerSetup)); 827 service_registry()->AddService(base::Bind(CreateEmbeddedWorkerSetup));
825 828
826 #if defined(MOJO_SHELL_CLIENT) 829 #if defined(MOJO_SHELL_CLIENT)
827 // We may not have a MojoShellConnection object in tests that directly 830 // We may not have a MojoShellConnection object in tests that directly
828 // instantiate a RenderThreadImpl. 831 // instantiate a RenderThreadImpl.
829 if (MojoShellConnection::Get() && 832 if (MojoShellConnection::Get() &&
830 base::CommandLine::ForCurrentProcess()->HasSwitch( 833 base::CommandLine::ForCurrentProcess()->HasSwitch(
831 switches::kUseMusInRenderer)) 834 switches::kUseMusInRenderer))
832 CreateRenderWidgetWindowTreeClientFactory(); 835 CreateRenderWidgetWindowTreeClientFactory();
(...skipping 1263 matching lines...) Expand 10 before | Expand all | Expand 10 after
2096 v8_memory_pressure_level == v8::MemoryPressureLevel::kCritical) 2099 v8_memory_pressure_level == v8::MemoryPressureLevel::kCritical)
2097 v8_memory_pressure_level = v8::MemoryPressureLevel::kModerate; 2100 v8_memory_pressure_level = v8::MemoryPressureLevel::kModerate;
2098 2101
2099 blink::mainThreadIsolate()->MemoryPressureNotification( 2102 blink::mainThreadIsolate()->MemoryPressureNotification(
2100 v8_memory_pressure_level); 2103 v8_memory_pressure_level);
2101 blink::MemoryPressureNotificationToWorkerThreadIsolates( 2104 blink::MemoryPressureNotificationToWorkerThreadIsolates(
2102 v8_memory_pressure_level); 2105 v8_memory_pressure_level);
2103 } 2106 }
2104 2107
2105 } // namespace content 2108 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698