| Index: third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h
|
| diff --git a/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h b/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h
|
| index a696817b675b2c9e3531b87bd9c6a8593c2ae716..2de9fcdbd74444b36721b8597789923909c6c629 100644
|
| --- a/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h
|
| +++ b/third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.h
|
| @@ -30,6 +30,7 @@
|
| #include "bindings/core/v8/ScriptState.h"
|
| #include "bindings/core/v8/ScriptValue.h"
|
| #include "bindings/core/v8/ScriptWrappable.h"
|
| +#include "bindings/core/v8/ScriptWrappableVisitor.h"
|
| #include "core/CoreExport.h"
|
| #include "core/dom/DOMTypedArray.h"
|
| #include "core/dom/TypedFlexibleArrayBufferView.h"
|
| @@ -586,12 +587,13 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext {
|
| DISALLOW_NEW_EXCEPT_PLACEMENT_NEW();
|
|
|
| public:
|
| - Member<WebGLTexture> m_texture2DBinding;
|
| - Member<WebGLTexture> m_textureCubeMapBinding;
|
| - Member<WebGLTexture> m_texture3DBinding;
|
| - Member<WebGLTexture> m_texture2DArrayBinding;
|
| + TraceWrapperMember<WebGLTexture> m_texture2DBinding;
|
| + TraceWrapperMember<WebGLTexture> m_textureCubeMapBinding;
|
| + TraceWrapperMember<WebGLTexture> m_texture3DBinding;
|
| + TraceWrapperMember<WebGLTexture> m_texture2DArrayBinding;
|
|
|
| DECLARE_TRACE();
|
| + DECLARE_TRACE_WRAPPERS();
|
| };
|
|
|
| PassRefPtr<Image> getImage(AccelerationHint, SnapshotReason) const override;
|
| @@ -711,10 +713,10 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext {
|
|
|
| // List of bound VBO's. Used to maintain info about sizes for ARRAY_BUFFER and
|
| // stored values for ELEMENT_ARRAY_BUFFER
|
| - Member<WebGLBuffer> m_boundArrayBuffer;
|
| + TraceWrapperMember<WebGLBuffer> m_boundArrayBuffer;
|
|
|
| Member<WebGLVertexArrayObjectBase> m_defaultVertexArrayObject;
|
| - Member<WebGLVertexArrayObjectBase> m_boundVertexArrayObject;
|
| + TraceWrapperMember<WebGLVertexArrayObjectBase> m_boundVertexArrayObject;
|
| void setBoundVertexArrayObject(WebGLVertexArrayObjectBase*);
|
|
|
| enum VertexAttribValueType {
|
| @@ -727,9 +729,9 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext {
|
| unsigned m_maxVertexAttribs;
|
| void setVertexAttribType(GLuint index, VertexAttribValueType);
|
|
|
| - Member<WebGLProgram> m_currentProgram;
|
| - Member<WebGLFramebuffer> m_framebufferBinding;
|
| - Member<WebGLRenderbuffer> m_renderbufferBinding;
|
| + TraceWrapperMember<WebGLProgram> m_currentProgram;
|
| + TraceWrapperMember<WebGLFramebuffer> m_framebufferBinding;
|
| + TraceWrapperMember<WebGLRenderbuffer> m_renderbufferBinding;
|
|
|
| HeapVector<TextureUnitState> m_textureUnits;
|
| unsigned long m_activeTextureUnit;
|
| @@ -884,14 +886,14 @@ class MODULES_EXPORT WebGLRenderingContextBase : public CanvasRenderingContext {
|
| };
|
|
|
| bool m_extensionEnabled[WebGLExtensionNameCount];
|
| - HeapVector<Member<ExtensionTracker>> m_extensions;
|
| + HeapVector<TraceWrapperMember<ExtensionTracker>> m_extensions;
|
|
|
| template <typename T>
|
| void registerExtension(Member<T>& extensionPtr,
|
| ExtensionFlags flags = ApprovedExtension,
|
| const char* const* prefixes = nullptr) {
|
| - m_extensions.append(
|
| - TypedExtensionTracker<T>::create(extensionPtr, flags, prefixes));
|
| + m_extensions.append(TraceWrapperMember<ExtensionTracker>(
|
| + this, TypedExtensionTracker<T>::create(extensionPtr, flags, prefixes)));
|
| }
|
|
|
| bool extensionSupportedAndAllowed(const ExtensionTracker*);
|
|
|