Apply patch. rdar://problem/69375258
Canonical link: https://commits.webkit.org/228499.101@safari-610.2.6.0-branch
git-svn-id: https://svn.webkit.org/repository/webkit/branches/safari-610.2.6.0-branch@267436 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index 7a21e05..e0a19cc 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,87 @@
+2020-09-22 Russell Epstein <repstein@apple.com>
+
+ Apply patch. rdar://problem/69375258
+
+ 2020-09-22 Dean Jackson <dino@apple.com>
+
+ Cherry-pick r266809. rdar://problem/68421590
+
+ 2020-09-09 Dean Jackson <dino@apple.com>
+
+ CrashTracer: com.apple.WebKit.WebContent at WebCore: WebCore::WebGLRenderingContext::getExtension
+ https://bugs.webkit.org/show_bug.cgi?id=216337
+ <rdar://problem/68421590>
+
+ Reviewed by Sam Weinig.
+
+ Bug 215599 added IsoHeap storage to WebGLExtension, but didn't add it
+ to any of the subclasses. This causes a crash in ::getExtension because
+ allocation of the new instance fails.
+
+ Add WTF_MAKE_ISO_ALLOCATED_IMPL to the .cpp files, and
+ WTF_MAKE_ISO_ALLOCATED to the .h files.
+
+ This should have been detected by on-device testing, since a debug
+ build would have asserted because the size passed into the constructor
+ was different from the actual size of the class.
+
+ * html/canvas/ANGLEInstancedArrays.cpp:
+ * html/canvas/ANGLEInstancedArrays.h:
+ * html/canvas/EXTBlendMinMax.cpp:
+ * html/canvas/EXTBlendMinMax.h:
+ * html/canvas/EXTColorBufferFloat.cpp:
+ * html/canvas/EXTColorBufferFloat.h:
+ * html/canvas/EXTColorBufferHalfFloat.cpp:
+ * html/canvas/EXTColorBufferHalfFloat.h:
+ * html/canvas/EXTFragDepth.cpp:
+ * html/canvas/EXTFragDepth.h:
+ * html/canvas/EXTShaderTextureLOD.cpp:
+ * html/canvas/EXTShaderTextureLOD.h:
+ * html/canvas/EXTTextureFilterAnisotropic.cpp:
+ * html/canvas/EXTTextureFilterAnisotropic.h:
+ * html/canvas/EXTsRGB.cpp:
+ * html/canvas/EXTsRGB.h:
+ * html/canvas/OESElementIndexUint.cpp:
+ * html/canvas/OESElementIndexUint.h:
+ * html/canvas/OESStandardDerivatives.cpp:
+ * html/canvas/OESStandardDerivatives.h:
+ * html/canvas/OESTextureFloat.cpp:
+ * html/canvas/OESTextureFloat.h:
+ * html/canvas/OESTextureFloatLinear.cpp:
+ * html/canvas/OESTextureFloatLinear.h:
+ * html/canvas/OESTextureHalfFloat.cpp:
+ * html/canvas/OESTextureHalfFloat.h:
+ * html/canvas/OESTextureHalfFloatLinear.cpp:
+ * html/canvas/OESTextureHalfFloatLinear.h:
+ * html/canvas/OESVertexArrayObject.cpp:
+ * html/canvas/OESVertexArrayObject.h:
+ * html/canvas/WebGLColorBufferFloat.cpp:
+ * html/canvas/WebGLColorBufferFloat.h:
+ * html/canvas/WebGLCompressedTextureASTC.cpp:
+ * html/canvas/WebGLCompressedTextureASTC.h:
+ * html/canvas/WebGLCompressedTextureATC.cpp:
+ * html/canvas/WebGLCompressedTextureATC.h:
+ * html/canvas/WebGLCompressedTextureETC.cpp:
+ * html/canvas/WebGLCompressedTextureETC.h:
+ * html/canvas/WebGLCompressedTextureETC1.cpp:
+ * html/canvas/WebGLCompressedTextureETC1.h:
+ * html/canvas/WebGLCompressedTexturePVRTC.cpp:
+ * html/canvas/WebGLCompressedTexturePVRTC.h:
+ * html/canvas/WebGLCompressedTextureS3TC.cpp:
+ * html/canvas/WebGLCompressedTextureS3TC.h:
+ * html/canvas/WebGLCompressedTextureS3TCsRGB.cpp:
+ * html/canvas/WebGLCompressedTextureS3TCsRGB.h:
+ * html/canvas/WebGLDebugRendererInfo.cpp:
+ * html/canvas/WebGLDebugRendererInfo.h:
+ * html/canvas/WebGLDebugShaders.cpp:
+ * html/canvas/WebGLDebugShaders.h:
+ * html/canvas/WebGLDepthTexture.cpp:
+ * html/canvas/WebGLDepthTexture.h:
+ * html/canvas/WebGLDrawBuffers.cpp:
+ * html/canvas/WebGLDrawBuffers.h:
+ * html/canvas/WebGLLoseContext.cpp:
+ * html/canvas/WebGLLoseContext.h:
+
2020-09-15 Russell Epstein <repstein@apple.com>
Cherry-pick r266121. rdar://problem/68949237
diff --git a/Source/WebCore/html/canvas/ANGLEInstancedArrays.cpp b/Source/WebCore/html/canvas/ANGLEInstancedArrays.cpp
index 0b448ab..80b2a72 100644
--- a/Source/WebCore/html/canvas/ANGLEInstancedArrays.cpp
+++ b/Source/WebCore/html/canvas/ANGLEInstancedArrays.cpp
@@ -32,8 +32,12 @@
#include "ExtensionsGL.h"
#endif
+#include <wtf/IsoMallocInlines.h>
+
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(ANGLEInstancedArrays);
+
ANGLEInstancedArrays::ANGLEInstancedArrays(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/ANGLEInstancedArrays.h b/Source/WebCore/html/canvas/ANGLEInstancedArrays.h
index 8370914..32eb897 100644
--- a/Source/WebCore/html/canvas/ANGLEInstancedArrays.h
+++ b/Source/WebCore/html/canvas/ANGLEInstancedArrays.h
@@ -32,6 +32,7 @@
class WebGLRenderingContextBase;
class ANGLEInstancedArrays final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(ANGLEInstancedArrays);
public:
explicit ANGLEInstancedArrays(WebGLRenderingContextBase&);
virtual ~ANGLEInstancedArrays();
diff --git a/Source/WebCore/html/canvas/EXTBlendMinMax.cpp b/Source/WebCore/html/canvas/EXTBlendMinMax.cpp
index 44051da..39b8141 100644
--- a/Source/WebCore/html/canvas/EXTBlendMinMax.cpp
+++ b/Source/WebCore/html/canvas/EXTBlendMinMax.cpp
@@ -30,6 +30,8 @@
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(EXTBlendMinMax);
+
EXTBlendMinMax::EXTBlendMinMax(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/EXTBlendMinMax.h b/Source/WebCore/html/canvas/EXTBlendMinMax.h
index 5959684..3becc4a 100644
--- a/Source/WebCore/html/canvas/EXTBlendMinMax.h
+++ b/Source/WebCore/html/canvas/EXTBlendMinMax.h
@@ -30,6 +30,7 @@
namespace WebCore {
class EXTBlendMinMax final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(EXTBlendMinMax);
public:
explicit EXTBlendMinMax(WebGLRenderingContextBase&);
virtual ~EXTBlendMinMax();
diff --git a/Source/WebCore/html/canvas/EXTColorBufferFloat.cpp b/Source/WebCore/html/canvas/EXTColorBufferFloat.cpp
index 167f739..58e49ca 100644
--- a/Source/WebCore/html/canvas/EXTColorBufferFloat.cpp
+++ b/Source/WebCore/html/canvas/EXTColorBufferFloat.cpp
@@ -32,6 +32,8 @@
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(EXTColorBufferFloat);
+
EXTColorBufferFloat::EXTColorBufferFloat(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/EXTColorBufferFloat.h b/Source/WebCore/html/canvas/EXTColorBufferFloat.h
index c3b5837..eb29fa0e 100644
--- a/Source/WebCore/html/canvas/EXTColorBufferFloat.h
+++ b/Source/WebCore/html/canvas/EXTColorBufferFloat.h
@@ -30,6 +30,7 @@
namespace WebCore {
class EXTColorBufferFloat final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(EXTColorBufferFloat);
public:
explicit EXTColorBufferFloat(WebGLRenderingContextBase&);
virtual ~EXTColorBufferFloat();
diff --git a/Source/WebCore/html/canvas/EXTColorBufferHalfFloat.cpp b/Source/WebCore/html/canvas/EXTColorBufferHalfFloat.cpp
index 8eda2ef..79e1cc1 100644
--- a/Source/WebCore/html/canvas/EXTColorBufferHalfFloat.cpp
+++ b/Source/WebCore/html/canvas/EXTColorBufferHalfFloat.cpp
@@ -29,9 +29,12 @@
#include "EXTColorBufferHalfFloat.h"
#include "ExtensionsGL.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(EXTColorBufferHalfFloat);
+
EXTColorBufferHalfFloat::EXTColorBufferHalfFloat(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/EXTColorBufferHalfFloat.h b/Source/WebCore/html/canvas/EXTColorBufferHalfFloat.h
index 0dca592..10779ef 100644
--- a/Source/WebCore/html/canvas/EXTColorBufferHalfFloat.h
+++ b/Source/WebCore/html/canvas/EXTColorBufferHalfFloat.h
@@ -30,6 +30,7 @@
namespace WebCore {
class EXTColorBufferHalfFloat final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(EXTColorBufferHalfFloat);
public:
explicit EXTColorBufferHalfFloat(WebGLRenderingContextBase&);
virtual ~EXTColorBufferHalfFloat();
diff --git a/Source/WebCore/html/canvas/EXTFragDepth.cpp b/Source/WebCore/html/canvas/EXTFragDepth.cpp
index 8513e30..c0c0219 100644
--- a/Source/WebCore/html/canvas/EXTFragDepth.cpp
+++ b/Source/WebCore/html/canvas/EXTFragDepth.cpp
@@ -27,9 +27,12 @@
#if ENABLE(WEBGL)
#include "EXTFragDepth.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(EXTFragDepth);
+
EXTFragDepth::EXTFragDepth(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/EXTFragDepth.h b/Source/WebCore/html/canvas/EXTFragDepth.h
index 5e8a4f9..b4ac47a 100644
--- a/Source/WebCore/html/canvas/EXTFragDepth.h
+++ b/Source/WebCore/html/canvas/EXTFragDepth.h
@@ -30,6 +30,7 @@
namespace WebCore {
class EXTFragDepth final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(EXTFragDepth);
public:
explicit EXTFragDepth(WebGLRenderingContextBase&);
virtual ~EXTFragDepth();
diff --git a/Source/WebCore/html/canvas/EXTShaderTextureLOD.cpp b/Source/WebCore/html/canvas/EXTShaderTextureLOD.cpp
index a2e918c..ff5d7fa 100644
--- a/Source/WebCore/html/canvas/EXTShaderTextureLOD.cpp
+++ b/Source/WebCore/html/canvas/EXTShaderTextureLOD.cpp
@@ -27,9 +27,12 @@
#if ENABLE(WEBGL)
#include "EXTShaderTextureLOD.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(EXTShaderTextureLOD);
+
EXTShaderTextureLOD::EXTShaderTextureLOD(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/EXTShaderTextureLOD.h b/Source/WebCore/html/canvas/EXTShaderTextureLOD.h
index 47c192f..8fccad8 100644
--- a/Source/WebCore/html/canvas/EXTShaderTextureLOD.h
+++ b/Source/WebCore/html/canvas/EXTShaderTextureLOD.h
@@ -30,6 +30,7 @@
namespace WebCore {
class EXTShaderTextureLOD final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(EXTShaderTextureLOD);
public:
explicit EXTShaderTextureLOD(WebGLRenderingContextBase&);
virtual ~EXTShaderTextureLOD();
diff --git a/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.cpp b/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.cpp
index de82c06..b52a4f0 100644
--- a/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.cpp
+++ b/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.cpp
@@ -28,9 +28,12 @@
#if ENABLE(WEBGL)
#include "EXTTextureFilterAnisotropic.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(EXTTextureFilterAnisotropic);
+
EXTTextureFilterAnisotropic::EXTTextureFilterAnisotropic(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.h b/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.h
index 4197d5f..4394804 100644
--- a/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.h
+++ b/Source/WebCore/html/canvas/EXTTextureFilterAnisotropic.h
@@ -30,6 +30,7 @@
namespace WebCore {
class EXTTextureFilterAnisotropic final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(EXTTextureFilterAnisotropic);
public:
explicit EXTTextureFilterAnisotropic(WebGLRenderingContextBase&);
virtual ~EXTTextureFilterAnisotropic();
diff --git a/Source/WebCore/html/canvas/EXTsRGB.cpp b/Source/WebCore/html/canvas/EXTsRGB.cpp
index 3dd8615..c523f68 100644
--- a/Source/WebCore/html/canvas/EXTsRGB.cpp
+++ b/Source/WebCore/html/canvas/EXTsRGB.cpp
@@ -27,9 +27,12 @@
#if ENABLE(WEBGL)
#include "EXTsRGB.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(EXTsRGB);
+
EXTsRGB::EXTsRGB(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/EXTsRGB.h b/Source/WebCore/html/canvas/EXTsRGB.h
index 4a69cba..ef56d2d 100644
--- a/Source/WebCore/html/canvas/EXTsRGB.h
+++ b/Source/WebCore/html/canvas/EXTsRGB.h
@@ -30,6 +30,7 @@
namespace WebCore {
class EXTsRGB final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(EXTsRGB);
public:
explicit EXTsRGB(WebGLRenderingContextBase&);
virtual ~EXTsRGB();
diff --git a/Source/WebCore/html/canvas/OESElementIndexUint.cpp b/Source/WebCore/html/canvas/OESElementIndexUint.cpp
index 9213a89..8b981cd 100644
--- a/Source/WebCore/html/canvas/OESElementIndexUint.cpp
+++ b/Source/WebCore/html/canvas/OESElementIndexUint.cpp
@@ -31,6 +31,8 @@
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(OESElementIndexUint);
+
OESElementIndexUint::OESElementIndexUint(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/OESElementIndexUint.h b/Source/WebCore/html/canvas/OESElementIndexUint.h
index 460321d..33b7696 100644
--- a/Source/WebCore/html/canvas/OESElementIndexUint.h
+++ b/Source/WebCore/html/canvas/OESElementIndexUint.h
@@ -30,6 +30,7 @@
namespace WebCore {
class OESElementIndexUint final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(OESElementIndexUint);
public:
explicit OESElementIndexUint(WebGLRenderingContextBase&);
virtual ~OESElementIndexUint();
diff --git a/Source/WebCore/html/canvas/OESStandardDerivatives.cpp b/Source/WebCore/html/canvas/OESStandardDerivatives.cpp
index d1aa8d6..86078df 100644
--- a/Source/WebCore/html/canvas/OESStandardDerivatives.cpp
+++ b/Source/WebCore/html/canvas/OESStandardDerivatives.cpp
@@ -28,9 +28,12 @@
#if ENABLE(WEBGL)
#include "OESStandardDerivatives.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(OESStandardDerivatives);
+
OESStandardDerivatives::OESStandardDerivatives(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/OESStandardDerivatives.h b/Source/WebCore/html/canvas/OESStandardDerivatives.h
index ccfc884..3963f29 100644
--- a/Source/WebCore/html/canvas/OESStandardDerivatives.h
+++ b/Source/WebCore/html/canvas/OESStandardDerivatives.h
@@ -30,6 +30,7 @@
namespace WebCore {
class OESStandardDerivatives final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(OESStandardDerivatives);
public:
explicit OESStandardDerivatives(WebGLRenderingContextBase&);
virtual ~OESStandardDerivatives();
diff --git a/Source/WebCore/html/canvas/OESTextureFloat.cpp b/Source/WebCore/html/canvas/OESTextureFloat.cpp
index d801f60..19dfbed 100644
--- a/Source/WebCore/html/canvas/OESTextureFloat.cpp
+++ b/Source/WebCore/html/canvas/OESTextureFloat.cpp
@@ -29,9 +29,12 @@
#include "OESTextureFloat.h"
#include "ExtensionsGL.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(OESTextureFloat);
+
OESTextureFloat::OESTextureFloat(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/OESTextureFloat.h b/Source/WebCore/html/canvas/OESTextureFloat.h
index 63be12c..8a7274d 100644
--- a/Source/WebCore/html/canvas/OESTextureFloat.h
+++ b/Source/WebCore/html/canvas/OESTextureFloat.h
@@ -30,6 +30,7 @@
namespace WebCore {
class OESTextureFloat final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(OESTextureFloat);
public:
OESTextureFloat(WebGLRenderingContextBase&);
virtual ~OESTextureFloat();
diff --git a/Source/WebCore/html/canvas/OESTextureFloatLinear.cpp b/Source/WebCore/html/canvas/OESTextureFloatLinear.cpp
index 626bdcd..743c1e9 100644
--- a/Source/WebCore/html/canvas/OESTextureFloatLinear.cpp
+++ b/Source/WebCore/html/canvas/OESTextureFloatLinear.cpp
@@ -27,9 +27,12 @@
#if ENABLE(WEBGL)
#include "OESTextureFloatLinear.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(OESTextureFloatLinear);
+
OESTextureFloatLinear::OESTextureFloatLinear(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/OESTextureFloatLinear.h b/Source/WebCore/html/canvas/OESTextureFloatLinear.h
index 93dd134..a111281 100644
--- a/Source/WebCore/html/canvas/OESTextureFloatLinear.h
+++ b/Source/WebCore/html/canvas/OESTextureFloatLinear.h
@@ -30,6 +30,7 @@
namespace WebCore {
class OESTextureFloatLinear final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(OESTextureFloatLinear);
public:
explicit OESTextureFloatLinear(WebGLRenderingContextBase&);
virtual ~OESTextureFloatLinear();
diff --git a/Source/WebCore/html/canvas/OESTextureHalfFloat.cpp b/Source/WebCore/html/canvas/OESTextureHalfFloat.cpp
index ea53f5d..40b9899 100644
--- a/Source/WebCore/html/canvas/OESTextureHalfFloat.cpp
+++ b/Source/WebCore/html/canvas/OESTextureHalfFloat.cpp
@@ -30,9 +30,12 @@
#include "OESTextureHalfFloat.h"
#include "ExtensionsGL.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(OESTextureHalfFloat);
+
OESTextureHalfFloat::OESTextureHalfFloat(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/OESTextureHalfFloat.h b/Source/WebCore/html/canvas/OESTextureHalfFloat.h
index 54f19f5..a354fcb 100644
--- a/Source/WebCore/html/canvas/OESTextureHalfFloat.h
+++ b/Source/WebCore/html/canvas/OESTextureHalfFloat.h
@@ -30,6 +30,7 @@
namespace WebCore {
class OESTextureHalfFloat final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(OESTextureHalfFloat);
public:
OESTextureHalfFloat(WebGLRenderingContextBase&);
virtual ~OESTextureHalfFloat();
diff --git a/Source/WebCore/html/canvas/OESTextureHalfFloatLinear.cpp b/Source/WebCore/html/canvas/OESTextureHalfFloatLinear.cpp
index 95840db..2c120d5 100644
--- a/Source/WebCore/html/canvas/OESTextureHalfFloatLinear.cpp
+++ b/Source/WebCore/html/canvas/OESTextureHalfFloatLinear.cpp
@@ -27,9 +27,12 @@
#if ENABLE(WEBGL)
#include "OESTextureHalfFloatLinear.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(OESTextureHalfFloatLinear);
+
OESTextureHalfFloatLinear::OESTextureHalfFloatLinear(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/OESTextureHalfFloatLinear.h b/Source/WebCore/html/canvas/OESTextureHalfFloatLinear.h
index 4810a11..796c6f0 100644
--- a/Source/WebCore/html/canvas/OESTextureHalfFloatLinear.h
+++ b/Source/WebCore/html/canvas/OESTextureHalfFloatLinear.h
@@ -30,6 +30,7 @@
namespace WebCore {
class OESTextureHalfFloatLinear final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(OESTextureHalfFloatLinear);
public:
OESTextureHalfFloatLinear(WebGLRenderingContextBase&);
virtual ~OESTextureHalfFloatLinear();
diff --git a/Source/WebCore/html/canvas/OESVertexArrayObject.cpp b/Source/WebCore/html/canvas/OESVertexArrayObject.cpp
index c11cf6f7..78fd4f8 100644
--- a/Source/WebCore/html/canvas/OESVertexArrayObject.cpp
+++ b/Source/WebCore/html/canvas/OESVertexArrayObject.cpp
@@ -30,11 +30,14 @@
#include "ExtensionsGL.h"
#include "WebGLRenderingContext.h"
+#include <wtf/IsoMallocInlines.h>
#include <wtf/Lock.h>
#include <wtf/Locker.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(OESVertexArrayObject);
+
OESVertexArrayObject::OESVertexArrayObject(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/OESVertexArrayObject.h b/Source/WebCore/html/canvas/OESVertexArrayObject.h
index 9508e6a..1be0ea9 100644
--- a/Source/WebCore/html/canvas/OESVertexArrayObject.h
+++ b/Source/WebCore/html/canvas/OESVertexArrayObject.h
@@ -36,6 +36,7 @@
class WebGLVertexArrayObjectOES;
class OESVertexArrayObject final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(OESVertexArrayObject);
public:
explicit OESVertexArrayObject(WebGLRenderingContextBase&);
diff --git a/Source/WebCore/html/canvas/WebGLColorBufferFloat.cpp b/Source/WebCore/html/canvas/WebGLColorBufferFloat.cpp
index 7ff7dec..a81a49c 100644
--- a/Source/WebCore/html/canvas/WebGLColorBufferFloat.cpp
+++ b/Source/WebCore/html/canvas/WebGLColorBufferFloat.cpp
@@ -29,9 +29,12 @@
#include "WebGLColorBufferFloat.h"
#include "ExtensionsGL.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLColorBufferFloat);
+
WebGLColorBufferFloat::WebGLColorBufferFloat(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLColorBufferFloat.h b/Source/WebCore/html/canvas/WebGLColorBufferFloat.h
index bf6f48d..0d2d07c 100644
--- a/Source/WebCore/html/canvas/WebGLColorBufferFloat.h
+++ b/Source/WebCore/html/canvas/WebGLColorBufferFloat.h
@@ -32,6 +32,7 @@
namespace WebCore {
class WebGLColorBufferFloat final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLColorBufferFloat);
public:
explicit WebGLColorBufferFloat(WebGLRenderingContextBase&);
virtual ~WebGLColorBufferFloat();
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureASTC.cpp b/Source/WebCore/html/canvas/WebGLCompressedTextureASTC.cpp
index 1bff43b..f149af3 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureASTC.cpp
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureASTC.cpp
@@ -33,7 +33,9 @@
#include "WebGLRenderingContextBase.h"
namespace WebCore {
-
+
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLCompressedTextureASTC);
+
WebGLCompressedTextureASTC::WebGLCompressedTextureASTC(WebGLRenderingContextBase& context)
: WebGLExtension(context)
, m_isHDRSupported(context.graphicsContextGL()->getExtensions().supports("GL_KHR_texture_compression_astc_hdr"_s))
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureASTC.h b/Source/WebCore/html/canvas/WebGLCompressedTextureASTC.h
index 93b7e61..30efe3d 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureASTC.h
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureASTC.h
@@ -32,6 +32,7 @@
namespace WebCore {
class WebGLCompressedTextureASTC final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLCompressedTextureASTC);
public:
explicit WebGLCompressedTextureASTC(WebGLRenderingContextBase&);
virtual ~WebGLCompressedTextureASTC();
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureATC.cpp b/Source/WebCore/html/canvas/WebGLCompressedTextureATC.cpp
index 9f81fb0..da8f0ef 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureATC.cpp
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureATC.cpp
@@ -33,6 +33,8 @@
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLCompressedTextureATC);
+
WebGLCompressedTextureATC::WebGLCompressedTextureATC(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureATC.h b/Source/WebCore/html/canvas/WebGLCompressedTextureATC.h
index 8196a06..e0bd266 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureATC.h
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureATC.h
@@ -34,6 +34,7 @@
class WebGLTexture;
class WebGLCompressedTextureATC final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLCompressedTextureATC);
public:
explicit WebGLCompressedTextureATC(WebGLRenderingContextBase&);
virtual ~WebGLCompressedTextureATC();
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp b/Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp
index a6a54aa..f1272dd 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureETC.cpp
@@ -33,6 +33,8 @@
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLCompressedTextureETC);
+
WebGLCompressedTextureETC::WebGLCompressedTextureETC(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureETC.h b/Source/WebCore/html/canvas/WebGLCompressedTextureETC.h
index 7a338ad..746778c 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureETC.h
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureETC.h
@@ -32,6 +32,7 @@
namespace WebCore {
class WebGLCompressedTextureETC final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLCompressedTextureETC);
public:
explicit WebGLCompressedTextureETC(WebGLRenderingContextBase&);
virtual ~WebGLCompressedTextureETC();
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp b/Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp
index fb3dfea..115b762 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureETC1.cpp
@@ -33,6 +33,8 @@
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLCompressedTextureETC1);
+
WebGLCompressedTextureETC1::WebGLCompressedTextureETC1(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureETC1.h b/Source/WebCore/html/canvas/WebGLCompressedTextureETC1.h
index 0f76a48..06fe27a 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureETC1.h
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureETC1.h
@@ -32,6 +32,7 @@
namespace WebCore {
class WebGLCompressedTextureETC1 final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLCompressedTextureETC1);
public:
explicit WebGLCompressedTextureETC1(WebGLRenderingContextBase&);
virtual ~WebGLCompressedTextureETC1();
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.cpp b/Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.cpp
index 93599ac..1a20c07 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.cpp
+++ b/Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.cpp
@@ -31,9 +31,12 @@
#include "ExtensionsGL.h"
#include "WebGLRenderingContextBase.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLCompressedTexturePVRTC);
+
WebGLCompressedTexturePVRTC::WebGLCompressedTexturePVRTC(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.h b/Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.h
index a18f3cf..a8669f0 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.h
+++ b/Source/WebCore/html/canvas/WebGLCompressedTexturePVRTC.h
@@ -32,6 +32,7 @@
namespace WebCore {
class WebGLCompressedTexturePVRTC final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLCompressedTexturePVRTC);
public:
explicit WebGLCompressedTexturePVRTC(WebGLRenderingContextBase&);
virtual ~WebGLCompressedTexturePVRTC();
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.cpp b/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.cpp
index a3d151e..07ba4fa 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.cpp
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.cpp
@@ -31,9 +31,12 @@
#include "ExtensionsGL.h"
#include "WebGLRenderingContextBase.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLCompressedTextureS3TC);
+
WebGLCompressedTextureS3TC::WebGLCompressedTextureS3TC(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.h b/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.h
index a76c318..a3473d8 100644
--- a/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.h
+++ b/Source/WebCore/html/canvas/WebGLCompressedTextureS3TC.h
@@ -34,6 +34,7 @@
class WebGLTexture;
class WebGLCompressedTextureS3TC final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLCompressedTextureS3TC);
public:
explicit WebGLCompressedTextureS3TC(WebGLRenderingContextBase&);
virtual ~WebGLCompressedTextureS3TC();
diff --git a/Source/WebCore/html/canvas/WebGLDebugRendererInfo.cpp b/Source/WebCore/html/canvas/WebGLDebugRendererInfo.cpp
index c9bd9f1..4e7414f5 100644
--- a/Source/WebCore/html/canvas/WebGLDebugRendererInfo.cpp
+++ b/Source/WebCore/html/canvas/WebGLDebugRendererInfo.cpp
@@ -30,9 +30,12 @@
#include "WebGLDebugRendererInfo.h"
#include "WebGLRenderingContextBase.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLDebugRendererInfo);
+
WebGLDebugRendererInfo::WebGLDebugRendererInfo(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLDebugRendererInfo.h b/Source/WebCore/html/canvas/WebGLDebugRendererInfo.h
index 6d3562e..4fadd32 100644
--- a/Source/WebCore/html/canvas/WebGLDebugRendererInfo.h
+++ b/Source/WebCore/html/canvas/WebGLDebugRendererInfo.h
@@ -32,6 +32,7 @@
namespace WebCore {
class WebGLDebugRendererInfo final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLDebugRendererInfo);
public:
enum EnumType {
UNMASKED_VENDOR_WEBGL = 0x9245,
diff --git a/Source/WebCore/html/canvas/WebGLDebugShaders.cpp b/Source/WebCore/html/canvas/WebGLDebugShaders.cpp
index dbb1bd3..6b04954 100644
--- a/Source/WebCore/html/canvas/WebGLDebugShaders.cpp
+++ b/Source/WebCore/html/canvas/WebGLDebugShaders.cpp
@@ -32,9 +32,12 @@
#include "ExtensionsGL.h"
#include "WebGLRenderingContextBase.h"
#include "WebGLShader.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLDebugShaders);
+
WebGLDebugShaders::WebGLDebugShaders(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLDebugShaders.h b/Source/WebCore/html/canvas/WebGLDebugShaders.h
index 4560e22..b5ef2c1 100644
--- a/Source/WebCore/html/canvas/WebGLDebugShaders.h
+++ b/Source/WebCore/html/canvas/WebGLDebugShaders.h
@@ -34,6 +34,7 @@
class WebGLShader;
class WebGLDebugShaders final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLDebugShaders);
public:
explicit WebGLDebugShaders(WebGLRenderingContextBase&);
virtual ~WebGLDebugShaders();
diff --git a/Source/WebCore/html/canvas/WebGLDepthTexture.cpp b/Source/WebCore/html/canvas/WebGLDepthTexture.cpp
index 4531e9f..af2ed90 100644
--- a/Source/WebCore/html/canvas/WebGLDepthTexture.cpp
+++ b/Source/WebCore/html/canvas/WebGLDepthTexture.cpp
@@ -30,9 +30,12 @@
#include "WebGLDepthTexture.h"
#include "ExtensionsGL.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLDepthTexture);
+
WebGLDepthTexture::WebGLDepthTexture(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLDepthTexture.h b/Source/WebCore/html/canvas/WebGLDepthTexture.h
index 0f8b99d..616100a 100644
--- a/Source/WebCore/html/canvas/WebGLDepthTexture.h
+++ b/Source/WebCore/html/canvas/WebGLDepthTexture.h
@@ -32,6 +32,7 @@
namespace WebCore {
class WebGLDepthTexture final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLDepthTexture);
public:
explicit WebGLDepthTexture(WebGLRenderingContextBase&);
virtual ~WebGLDepthTexture();
diff --git a/Source/WebCore/html/canvas/WebGLDrawBuffers.cpp b/Source/WebCore/html/canvas/WebGLDrawBuffers.cpp
index 81131a7..b5c4112 100644
--- a/Source/WebCore/html/canvas/WebGLDrawBuffers.cpp
+++ b/Source/WebCore/html/canvas/WebGLDrawBuffers.cpp
@@ -29,9 +29,12 @@
#include "WebGLDrawBuffers.h"
#include "ExtensionsGL.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLDrawBuffers);
+
WebGLDrawBuffers::WebGLDrawBuffers(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLDrawBuffers.h b/Source/WebCore/html/canvas/WebGLDrawBuffers.h
index 22cc015..6b9e2a5 100644
--- a/Source/WebCore/html/canvas/WebGLDrawBuffers.h
+++ b/Source/WebCore/html/canvas/WebGLDrawBuffers.h
@@ -32,6 +32,7 @@
namespace WebCore {
class WebGLDrawBuffers final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLDrawBuffers);
public:
explicit WebGLDrawBuffers(WebGLRenderingContextBase&);
virtual ~WebGLDrawBuffers();
diff --git a/Source/WebCore/html/canvas/WebGLLoseContext.cpp b/Source/WebCore/html/canvas/WebGLLoseContext.cpp
index f3cf32f..7243535 100644
--- a/Source/WebCore/html/canvas/WebGLLoseContext.cpp
+++ b/Source/WebCore/html/canvas/WebGLLoseContext.cpp
@@ -30,9 +30,12 @@
#include "WebGLLoseContext.h"
#include "WebGLRenderingContextBase.h"
+#include <wtf/IsoMallocInlines.h>
namespace WebCore {
+WTF_MAKE_ISO_ALLOCATED_IMPL(WebGLLoseContext);
+
WebGLLoseContext::WebGLLoseContext(WebGLRenderingContextBase& context)
: WebGLExtension(context)
{
diff --git a/Source/WebCore/html/canvas/WebGLLoseContext.h b/Source/WebCore/html/canvas/WebGLLoseContext.h
index cd622a5..b072f477 100644
--- a/Source/WebCore/html/canvas/WebGLLoseContext.h
+++ b/Source/WebCore/html/canvas/WebGLLoseContext.h
@@ -32,6 +32,7 @@
namespace WebCore {
class WebGLLoseContext final : public WebGLExtension {
+ WTF_MAKE_ISO_ALLOCATED(WebGLLoseContext);
public:
explicit WebGLLoseContext(WebGLRenderingContextBase&);
virtual ~WebGLLoseContext();