| Index: sky/engine/core/loader/ImageLoader.h
|
| diff --git a/sky/engine/core/loader/ImageLoader.h b/sky/engine/core/loader/ImageLoader.h
|
| index 049c138c8d621713b07caafb54a54bdc2be4c360..ef5951bbc82b8b5e0da4ff0af6828b0523022985 100644
|
| --- a/sky/engine/core/loader/ImageLoader.h
|
| +++ b/sky/engine/core/loader/ImageLoader.h
|
| @@ -144,31 +144,8 @@ private:
|
|
|
| RawPtr<Element> m_element;
|
| ResourcePtr<ImageResource> m_image;
|
| - // FIXME: Oilpan: We might be able to remove this Persistent hack when
|
| - // ImageResourceClient is traceable.
|
| - GC_PLUGIN_IGNORE("http://crbug.com/383741")
|
| RefPtr<Element> m_keepAlive;
|
| -#if ENABLE(OILPAN)
|
| - class ImageLoaderClientRemover {
|
| - public:
|
| - ImageLoaderClientRemover(ImageLoader& loader, ImageLoaderClient& client) : m_loader(loader), m_client(client) { }
|
| - ~ImageLoaderClientRemover();
|
| -
|
| - private:
|
| - ImageLoader& m_loader;
|
| - ImageLoaderClient& m_client;
|
| - };
|
| - friend class ImageLoaderClientRemover;
|
| - // Oilpan: This ImageLoader object must outlive its clients because they
|
| - // need to call ImageLoader::willRemoveClient before they
|
| - // die. Non-Persistent HeapHashMap doesn't work well because weak processing
|
| - // for HeapHashMap is not triggered when both of ImageLoader and
|
| - // ImageLoaderClient are unreachable.
|
| - GC_PLUGIN_IGNORE("http://crbug.com/383742")
|
| - PersistentHeapHashMap<WeakMember<ImageLoaderClient>, OwnPtr<ImageLoaderClientRemover> > m_clients;
|
| -#else
|
| HashSet<ImageLoaderClient*> m_clients;
|
| -#endif
|
| Timer<ImageLoader> m_derefElementTimer;
|
| AtomicString m_failedLoadURL;
|
| WeakPtr<Task> m_pendingTask; // owned by Microtask
|
|
|