| Index: content/renderer/image_downloader/image_downloader_impl.cc
|
| diff --git a/content/renderer/image_downloader/image_downloader_impl.cc b/content/renderer/image_downloader/image_downloader_impl.cc
|
| index ac4995a2fec9d3343a410706ee1635a4c103f67d..5cb89edfb2a59ae55b4cdc8194bdfcfd6c9626ac 100644
|
| --- a/content/renderer/image_downloader/image_downloader_impl.cc
|
| +++ b/content/renderer/image_downloader/image_downloader_impl.cc
|
| @@ -130,7 +130,12 @@ ImageDownloaderImpl::ImageDownloaderImpl(
|
| }
|
|
|
| ImageDownloaderImpl::~ImageDownloaderImpl() {
|
| - RenderThread::Get()->RemoveObserver(this);
|
| + RenderThread* thread = RenderThread::Get();
|
| + // As ImageDownloaderImpl is a strong binding with message pipe, the
|
| + // destructor may run after message loop shutdown, so we need to check whether
|
| + // RenderThread is null.
|
| + if (thread)
|
| + thread->RemoveObserver(this);
|
| }
|
|
|
| // static
|
|
|