Chromium Code Reviews| Index: chrome/renderer/chrome_render_process_observer.cc |
| diff --git a/chrome/renderer/chrome_render_process_observer.cc b/chrome/renderer/chrome_render_process_observer.cc |
| index bf65d8633de5ea67572e5ce20ac189d23c237fe3..ec04a26c56bb28c24310cf752ca416223cb881cd 100644 |
| --- a/chrome/renderer/chrome_render_process_observer.cc |
| +++ b/chrome/renderer/chrome_render_process_observer.cc |
| @@ -17,6 +17,7 @@ |
| #include "chrome/common/extensions/extension_localization_peer.h" |
| #include "chrome/common/net/net_resource_provider.h" |
| #include "chrome/common/render_messages.h" |
| +#include "chrome/renderer/chrome_content_renderer_client.h" |
| #include "chrome/renderer/content_settings_observer.h" |
| #include "chrome/renderer/security_filter_peer.h" |
| #include "content/common/resource_dispatcher.h" |
| @@ -305,7 +306,9 @@ class ShutdownDetector : public base::PlatformThread::Delegate { |
| bool ChromeRenderProcessObserver::is_incognito_process_ = false; |
| -ChromeRenderProcessObserver::ChromeRenderProcessObserver() { |
| +ChromeRenderProcessObserver::ChromeRenderProcessObserver( |
| + chrome::ChromeContentRendererClient* client) |
| + : client_(client) { |
| const CommandLine& command_line = *CommandLine::ForCurrentProcess(); |
| if (command_line.HasSwitch(switches::kEnableWatchdog)) { |
| // TODO(JAR): Need to implement renderer IO msgloop watchdog. |
| @@ -482,6 +485,7 @@ void ChromeRenderProcessObserver::OnGetV8HeapStats() { |
| } |
| void ChromeRenderProcessObserver::OnPurgeMemory() { |
| + LOG(INFO) << "CRPO purging memory!"; |
|
jam
2011/07/22 16:31:50
ditto
Greg Billock
2011/07/22 17:02:07
removed
On 2011/07/22 16:31:50, John Abd-El-Malek
|
| // Clear the object cache (as much as possible; some live objects cannot be |
| // freed). |
| WebCache::clear(); |
| @@ -508,4 +512,7 @@ void ChromeRenderProcessObserver::OnPurgeMemory() { |
| // Tell tcmalloc to release any free pages it's still holding. |
| MallocExtension::instance()->ReleaseFreeMemory(); |
| #endif |
| + |
| + if (client_) |
|
jam
2011/07/22 16:31:50
nit: can client_ ever be NULL? if not then no need
Greg Billock
2011/07/22 17:02:07
For unit tests and such it can, so I thought this
|
| + client_->OnPurgeMemory(); |
| } |