Index: Source/modules/webgl/WebGLSampler.cpp |
diff --git a/Source/modules/webgl/WebGLSampler.cpp b/Source/modules/webgl/WebGLSampler.cpp |
index 4aefbd7a61ad05f6b982610731dc9d0e2c458323..338c672281350c73b91f8bae6e3594cf2e0d2691 100644 |
--- a/Source/modules/webgl/WebGLSampler.cpp |
+++ b/Source/modules/webgl/WebGLSampler.cpp |
@@ -10,14 +10,20 @@ |
namespace blink { |
-WebGLSampler* WebGLSampler::create(WebGL2RenderingContextBase* ctx) |
+PassRefPtrWillBeRawPtr<WebGLSampler> WebGLSampler::create(WebGL2RenderingContextBase* ctx) |
{ |
- return new WebGLSampler(ctx); |
+ return adoptRefWillBeNoop(new WebGLSampler(ctx)); |
} |
WebGLSampler::~WebGLSampler() |
{ |
- // See the comment in WebGLObject::detachAndDeleteObject(). |
+ // Always call detach here to ensure that platform object deletion |
+ // happens with Oilpan enabled. It keeps the code regular to do it |
+ // with or without Oilpan enabled. |
+ // |
+ // See comment in WebGLBuffer's destructor for additional |
+ // information on why this is done for WebGLSharedObject-derived |
+ // objects. |
detachAndDeleteObject(); |
} |