Index: Source/core/html/canvas/WebGLContextGroup.h |
diff --git a/Source/core/html/canvas/WebGLContextGroup.h b/Source/core/html/canvas/WebGLContextGroup.h |
index 486b2bcd7bfc39db423d09ae6500fd2f8081e770..3cdafaa9c225e30a386d2b653e3ef5e1d5f5371d 100644 |
--- a/Source/core/html/canvas/WebGLContextGroup.h |
+++ b/Source/core/html/canvas/WebGLContextGroup.h |
@@ -32,16 +32,11 @@ |
#include "wtf/RefCounted.h" |
namespace blink { |
-class WebGraphicsContext3D; |
-} |
- |
-namespace blink { |
+class WebGraphicsContext3D; |
class WebGLSharedObject; |
class WebGLRenderingContextBase; |
-typedef int ExceptionCode; |
- |
class WebGLContextGroup final : public RefCounted<WebGLContextGroup> { |
public: |
static PassRefPtr<WebGLContextGroup> create(); |
@@ -57,6 +52,23 @@ public: |
void loseContextGroup(WebGLRenderingContextBase::LostContextMode, WebGLRenderingContextBase::AutoRecoveryMethod); |
+#if ENABLE(OILPAN) && defined(ADDRESS_SANITIZER) |
+ void poisonContext(bool); |
+ void poisonObject(WebGLSharedObject*, bool); |
+ |
+ class UnpoisonScope final { |
+ STACK_ALLOCATED(); |
+ public: |
+ UnpoisonScope(WebGLContextGroup*); |
+ UnpoisonScope(WebGLContextGroup*, WebGLSharedObject*); |
+ ~UnpoisonScope(); |
+ |
+ private: |
+ Member<WebGLContextGroup> m_context; |
+ Member<WebGLSharedObject> m_object; |
+ }; |
+#endif |
+ |
private: |
friend class WebGLObject; |