| Index: chrome/browser/renderer_host/browser_render_process_host.cc
|
| ===================================================================
|
| --- chrome/browser/renderer_host/browser_render_process_host.cc (revision 10506)
|
| +++ chrome/browser/renderer_host/browser_render_process_host.cc (working copy)
|
| @@ -71,11 +71,14 @@
|
|
|
| // ----------------------------------------------------------------------------
|
|
|
| +// This class creates the IO thread for the renderer when running in
|
| +// single-process mode. It's not used in multi-process mode.
|
| class RendererMainThread : public base::Thread {
|
| public:
|
| explicit RendererMainThread(const std::wstring& channel_id)
|
| : base::Thread("Chrome_InProcRendererThread"),
|
| - channel_id_(channel_id) {
|
| + channel_id_(channel_id),
|
| + render_process_(NULL) {
|
| }
|
|
|
| protected:
|
| @@ -84,7 +87,7 @@
|
| CoInitialize(NULL);
|
| #endif
|
|
|
| - render_process_.reset(new RenderProcess(channel_id_));
|
| + render_process_ = new RenderProcess(channel_id_);
|
| // It's a little lame to manually set this flag. But the single process
|
| // RendererThread will receive the WM_QUIT. We don't need to assert on
|
| // this thread, so just force the flag manually.
|
| @@ -94,7 +97,7 @@
|
| }
|
|
|
| virtual void CleanUp() {
|
| - render_process_.reset();
|
| + delete render_process_;
|
|
|
| #if defined(OS_WIN)
|
| CoUninitialize();
|
| @@ -103,7 +106,8 @@
|
|
|
| private:
|
| std::wstring channel_id_;
|
| - scoped_ptr<RenderProcess> render_process_;
|
| + // Deleted in CleanUp() on the renderer thread, so don't use a smart pointer.
|
| + RenderProcess* render_process_;
|
| };
|
|
|
| // Used for a View_ID where the renderer has not been attached yet
|
|
|