Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1250)

Unified Diff: Source/core/html/canvas/WebGLContextGroup.h

Issue 1151163002: Oilpan: eagerly finalize WebGLRenderingContext objects. (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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;
« no previous file with comments | « no previous file | Source/core/html/canvas/WebGLContextGroup.cpp » ('j') | Source/core/html/canvas/WebGLContextGroup.cpp » ('J')

Powered by Google App Engine
This is Rietveld 408576698