| Index: third_party/WebKit/Source/core/svg/SVGResourceClient.h
 | 
| diff --git a/third_party/WebKit/Source/core/svg/SVGResourceClient.h b/third_party/WebKit/Source/core/svg/SVGResourceClient.h
 | 
| index e3f8ec0b36da34d7b73629f4ce5094e695ee0834..58b4f5378f9c9a8ee6f2412c75245c6a397f413d 100644
 | 
| --- a/third_party/WebKit/Source/core/svg/SVGResourceClient.h
 | 
| +++ b/third_party/WebKit/Source/core/svg/SVGResourceClient.h
 | 
| @@ -7,26 +7,35 @@
 | 
|  
 | 
|  #include "core/CoreExport.h"
 | 
|  #include "core/fetch/DocumentResource.h"
 | 
| +#include "core/svg/SVGFilterElement.h"
 | 
|  #include "platform/heap/Handle.h"
 | 
|  
 | 
|  namespace blink {
 | 
|  
 | 
| -class TreeScope;
 | 
| +class Document;
 | 
| +class FilterOperations;
 | 
|  
 | 
|  class CORE_EXPORT SVGResourceClient : public DocumentResourceClient {
 | 
| +  USING_PRE_FINALIZER(SVGResourceClient, clearFilterReferences);
 | 
| +
 | 
|   public:
 | 
| -  virtual ~SVGResourceClient() {}
 | 
| +  SVGResourceClient();
 | 
| +  ~SVGResourceClient() override;
 | 
| +  void addFilterReferences(const FilterOperations&, const Document&);
 | 
| +  void clearFilterReferences();
 | 
|  
 | 
| -  virtual TreeScope* treeScope() = 0;
 | 
| +  virtual void filterNeedsInvalidation() = 0;
 | 
|  
 | 
| -  virtual void resourceContentChanged() = 0;
 | 
| -  virtual void resourceElementChanged() = 0;
 | 
| +  void filterWillBeDestroyed(SVGFilterElement*);
 | 
|  
 | 
| - protected:
 | 
| -  SVGResourceClient() {}
 | 
| +  void notifyFinished(Resource*) override;
 | 
| +  String debugName() const override { return "SVGResourceClient"; }
 | 
|  
 | 
| -  String debugName() const override { return "SVGResourceClient"; }
 | 
| -  void notifyFinished(Resource*) override { resourceElementChanged(); }
 | 
| +  DECLARE_TRACE();
 | 
| +
 | 
| + private:
 | 
| +  HeapHashSet<WeakMember<SVGFilterElement>> m_internalFilterReferences;
 | 
| +  HeapVector<Member<DocumentResource>> m_externalFilterReferences;
 | 
|  };
 | 
|  
 | 
|  }  // namespace blink
 | 
| 
 |