Diff
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog 2016-01-19 08:26:13 UTC (rev 195259)
@@ -1,3 +1,124 @@
+2016-01-13 Said Abou-Hallawa <[email protected]>
+
+ Reference cycle between SVGPathElement and SVGPathSegWithContext leaks Document
+ https://bugs.webkit.org/show_bug.cgi?id=151810
+
+ Reviewed by Darin Adler.
+
+ Break the reference cycle between SVGPathElement and SVGPathSegWithContext
+ by changing the back-pointer to be a WeakPtr pointer instead of having it
+ RefPtr. Make sure the SVGPathSegWithContext derived classes handle correctly
+ the case when the SVGPathElement back-pointer is deleted.
+
+ Also change the SVGPathElement argument to the SVGPathSeg creation functions
+ and constructors to be a const reference instead of having it as a pointer
+ since SVGPathElement is the class factory for all these classes.
+
+ * svg/SVGPathElement.cpp:
+ (WebCore::SVGPathElement::SVGPathElement):
+ (WebCore::SVGPathElement::createSVGPathSegClosePath):
+ (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
+ (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
+ (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
+ (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
+ (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
+ (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
+ (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
+ (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
+ (WebCore::SVGPathElement::createSVGPathSegArcAbs):
+ (WebCore::SVGPathElement::createSVGPathSegArcRel):
+ (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
+ (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
+ (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
+ (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
+ (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
+ (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
+ (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
+ (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
+ (WebCore::SVGPathElement::isSupportedAttribute):
+ * svg/SVGPathElement.h:
+ * svg/SVGPathSegArc.h:
+ (WebCore::SVGPathSegArc::SVGPathSegArc):
+ * svg/SVGPathSegArcAbs.h:
+ (WebCore::SVGPathSegArcAbs::create):
+ (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
+ * svg/SVGPathSegArcRel.h:
+ (WebCore::SVGPathSegArcRel::create):
+ (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
+ * svg/SVGPathSegClosePath.h:
+ (WebCore::SVGPathSegClosePath::create):
+ (WebCore::SVGPathSegClosePath::SVGPathSegClosePath):
+ * svg/SVGPathSegCurvetoCubic.h:
+ (WebCore::SVGPathSegCurvetoCubic::SVGPathSegCurvetoCubic):
+ * svg/SVGPathSegCurvetoCubicAbs.h:
+ (WebCore::SVGPathSegCurvetoCubicAbs::create):
+ (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
+ * svg/SVGPathSegCurvetoCubicRel.h:
+ (WebCore::SVGPathSegCurvetoCubicRel::create):
+ (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
+ * svg/SVGPathSegCurvetoCubicSmooth.h:
+ (WebCore::SVGPathSegCurvetoCubicSmooth::SVGPathSegCurvetoCubicSmooth):
+ * svg/SVGPathSegCurvetoCubicSmoothAbs.h:
+ (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
+ (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
+ * svg/SVGPathSegCurvetoCubicSmoothRel.h:
+ (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
+ (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
+ * svg/SVGPathSegCurvetoQuadratic.h:
+ (WebCore::SVGPathSegCurvetoQuadratic::SVGPathSegCurvetoQuadratic):
+ * svg/SVGPathSegCurvetoQuadraticAbs.h:
+ (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
+ (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
+ * svg/SVGPathSegCurvetoQuadraticRel.h:
+ (WebCore::SVGPathSegCurvetoQuadraticRel::create):
+ (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
+ * svg/SVGPathSegCurvetoQuadraticSmoothAbs.h:
+ (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
+ (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
+ * svg/SVGPathSegCurvetoQuadraticSmoothRel.h:
+ (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
+ (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
+ * svg/SVGPathSegLinetoAbs.h:
+ (WebCore::SVGPathSegLinetoAbs::create):
+ (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
+ * svg/SVGPathSegLinetoHorizontal.h:
+ (WebCore::SVGPathSegLinetoHorizontal::SVGPathSegLinetoHorizontal):
+ * svg/SVGPathSegLinetoHorizontalAbs.h:
+ (WebCore::SVGPathSegLinetoHorizontalAbs::create):
+ (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
+ * svg/SVGPathSegLinetoHorizontalRel.h:
+ (WebCore::SVGPathSegLinetoHorizontalRel::create):
+ (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
+ * svg/SVGPathSegLinetoRel.h:
+ (WebCore::SVGPathSegLinetoRel::create):
+ (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
+ * svg/SVGPathSegLinetoVertical.h:
+ (WebCore::SVGPathSegLinetoVertical::SVGPathSegLinetoVertical):
+ * svg/SVGPathSegLinetoVerticalAbs.h:
+ (WebCore::SVGPathSegLinetoVerticalAbs::create):
+ (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
+ * svg/SVGPathSegLinetoVerticalRel.h:
+ (WebCore::SVGPathSegLinetoVerticalRel::create):
+ (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
+ * svg/SVGPathSegMovetoAbs.h:
+ (WebCore::SVGPathSegMovetoAbs::create):
+ (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
+ * svg/SVGPathSegMovetoRel.h:
+ (WebCore::SVGPathSegMovetoRel::create):
+ (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
+ * svg/SVGPathSegWithContext.h:
+ (WebCore::SVGPathSegWithContext::SVGPathSegWithContext):
+ (WebCore::SVGPathSegWithContext::animatedProperty):
+ (WebCore::SVGPathSegWithContext::contextElement):
+ (WebCore::SVGPathSegWithContext::setContextAndRole):
+ (WebCore::SVGPathSegWithContext::commitChange):
+ (WebCore::SVGPathSegSingleCoordinate::setY):
+ (WebCore::SVGPathSegSingleCoordinate::SVGPathSegSingleCoordinate):
+ * svg/properties/SVGPathSegListPropertyTearOff.cpp:
+ (WebCore::SVGPathSegListPropertyTearOff::clearContextAndRoles):
+ (WebCore::SVGPathSegListPropertyTearOff::replaceItem):
+ (WebCore::SVGPathSegListPropertyTearOff::removeItem):
+
2016-01-13 YongGeol Jung <[email protected]>
[TexMap] BitmapTextureGL is not released while scene is updated continuously.
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.cpp (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.cpp 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.cpp 2016-01-19 08:26:13 UTC (rev 195259)
@@ -82,6 +82,7 @@
: SVGGraphicsElement(tagName, document)
, m_pathByteStream(std::make_unique<SVGPathByteStream>())
, m_pathSegList(PathSegUnalteredRole)
+ , m_weakPtrFactory(this)
, m_isAnimValObserved(false)
{
ASSERT(hasTagName(SVGNames::pathTag));
@@ -116,97 +117,97 @@
Ref<SVGPathSegClosePath> SVGPathElement::createSVGPathSegClosePath(SVGPathSegRole role)
{
- return SVGPathSegClosePath::create(this, role);
+ return SVGPathSegClosePath::create(*this, role);
}
Ref<SVGPathSegMovetoAbs> SVGPathElement::createSVGPathSegMovetoAbs(float x, float y, SVGPathSegRole role)
{
- return SVGPathSegMovetoAbs::create(this, role, x, y);
+ return SVGPathSegMovetoAbs::create(*this, role, x, y);
}
Ref<SVGPathSegMovetoRel> SVGPathElement::createSVGPathSegMovetoRel(float x, float y, SVGPathSegRole role)
{
- return SVGPathSegMovetoRel::create(this, role, x, y);
+ return SVGPathSegMovetoRel::create(*this, role, x, y);
}
Ref<SVGPathSegLinetoAbs> SVGPathElement::createSVGPathSegLinetoAbs(float x, float y, SVGPathSegRole role)
{
- return SVGPathSegLinetoAbs::create(this, role, x, y);
+ return SVGPathSegLinetoAbs::create(*this, role, x, y);
}
Ref<SVGPathSegLinetoRel> SVGPathElement::createSVGPathSegLinetoRel(float x, float y, SVGPathSegRole role)
{
- return SVGPathSegLinetoRel::create(this, role, x, y);
+ return SVGPathSegLinetoRel::create(*this, role, x, y);
}
Ref<SVGPathSegCurvetoCubicAbs> SVGPathElement::createSVGPathSegCurvetoCubicAbs(float x, float y, float x1, float y1, float x2, float y2, SVGPathSegRole role)
{
- return SVGPathSegCurvetoCubicAbs::create(this, role, x, y, x1, y1, x2, y2);
+ return SVGPathSegCurvetoCubicAbs::create(*this, role, x, y, x1, y1, x2, y2);
}
Ref<SVGPathSegCurvetoCubicRel> SVGPathElement::createSVGPathSegCurvetoCubicRel(float x, float y, float x1, float y1, float x2, float y2, SVGPathSegRole role)
{
- return SVGPathSegCurvetoCubicRel::create(this, role, x, y, x1, y1, x2, y2);
+ return SVGPathSegCurvetoCubicRel::create(*this, role, x, y, x1, y1, x2, y2);
}
Ref<SVGPathSegCurvetoQuadraticAbs> SVGPathElement::createSVGPathSegCurvetoQuadraticAbs(float x, float y, float x1, float y1, SVGPathSegRole role)
{
- return SVGPathSegCurvetoQuadraticAbs::create(this, role, x, y, x1, y1);
+ return SVGPathSegCurvetoQuadraticAbs::create(*this, role, x, y, x1, y1);
}
Ref<SVGPathSegCurvetoQuadraticRel> SVGPathElement::createSVGPathSegCurvetoQuadraticRel(float x, float y, float x1, float y1, SVGPathSegRole role)
{
- return SVGPathSegCurvetoQuadraticRel::create(this, role, x, y, x1, y1);
+ return SVGPathSegCurvetoQuadraticRel::create(*this, role, x, y, x1, y1);
}
Ref<SVGPathSegArcAbs> SVGPathElement::createSVGPathSegArcAbs(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag, SVGPathSegRole role)
{
- return SVGPathSegArcAbs::create(this, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+ return SVGPathSegArcAbs::create(*this, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag);
}
Ref<SVGPathSegArcRel> SVGPathElement::createSVGPathSegArcRel(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag, SVGPathSegRole role)
{
- return SVGPathSegArcRel::create(this, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag);
+ return SVGPathSegArcRel::create(*this, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag);
}
Ref<SVGPathSegLinetoHorizontalAbs> SVGPathElement::createSVGPathSegLinetoHorizontalAbs(float x, SVGPathSegRole role)
{
- return SVGPathSegLinetoHorizontalAbs::create(this, role, x);
+ return SVGPathSegLinetoHorizontalAbs::create(*this, role, x);
}
Ref<SVGPathSegLinetoHorizontalRel> SVGPathElement::createSVGPathSegLinetoHorizontalRel(float x, SVGPathSegRole role)
{
- return SVGPathSegLinetoHorizontalRel::create(this, role, x);
+ return SVGPathSegLinetoHorizontalRel::create(*this, role, x);
}
Ref<SVGPathSegLinetoVerticalAbs> SVGPathElement::createSVGPathSegLinetoVerticalAbs(float y, SVGPathSegRole role)
{
- return SVGPathSegLinetoVerticalAbs::create(this, role, y);
+ return SVGPathSegLinetoVerticalAbs::create(*this, role, y);
}
Ref<SVGPathSegLinetoVerticalRel> SVGPathElement::createSVGPathSegLinetoVerticalRel(float y, SVGPathSegRole role)
{
- return SVGPathSegLinetoVerticalRel::create(this, role, y);
+ return SVGPathSegLinetoVerticalRel::create(*this, role, y);
}
Ref<SVGPathSegCurvetoCubicSmoothAbs> SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs(float x, float y, float x2, float y2, SVGPathSegRole role)
{
- return SVGPathSegCurvetoCubicSmoothAbs::create(this, role, x, y, x2, y2);
+ return SVGPathSegCurvetoCubicSmoothAbs::create(*this, role, x, y, x2, y2);
}
Ref<SVGPathSegCurvetoCubicSmoothRel> SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel(float x, float y, float x2, float y2, SVGPathSegRole role)
{
- return SVGPathSegCurvetoCubicSmoothRel::create(this, role, x, y, x2, y2);
+ return SVGPathSegCurvetoCubicSmoothRel::create(*this, role, x, y, x2, y2);
}
Ref<SVGPathSegCurvetoQuadraticSmoothAbs> SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs(float x, float y, SVGPathSegRole role)
{
- return SVGPathSegCurvetoQuadraticSmoothAbs::create(this, role, x, y);
+ return SVGPathSegCurvetoQuadraticSmoothAbs::create(*this, role, x, y);
}
Ref<SVGPathSegCurvetoQuadraticSmoothRel> SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel(float x, float y, SVGPathSegRole role)
{
- return SVGPathSegCurvetoQuadraticSmoothRel::create(this, role, x, y);
+ return SVGPathSegCurvetoQuadraticSmoothRel::create(*this, role, x, y);
}
bool SVGPathElement::isSupportedAttribute(const QualifiedName& attrName)
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -97,6 +97,8 @@
bool isAnimValObserved() const { return m_isAnimValObserved; }
+ WeakPtr<SVGPathElement> createWeakPtr() const { return m_weakPtrFactory.createWeakPtr(); }
+
private:
SVGPathElement(const QualifiedName&, Document&);
@@ -126,6 +128,7 @@
private:
std::unique_ptr<SVGPathByteStream> m_pathByteStream;
mutable SVGSynchronizableAnimatedProperty<SVGPathSegList> m_pathSegList;
+ WeakPtrFactory<SVGPathElement> m_weakPtrFactory;
bool m_isAnimValObserved;
};
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArc.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArc.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArc.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -27,7 +27,7 @@
class SVGPathSegArc : public SVGPathSegWithContext {
public:
- SVGPathSegArc(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
+ SVGPathSegArc(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
: SVGPathSegWithContext(element, role)
, m_x(x)
, m_y(y)
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcAbs.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcAbs.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcAbs.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegArcAbs : public SVGPathSegArc {
public:
- static Ref<SVGPathSegArcAbs> create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
+ static Ref<SVGPathSegArcAbs> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
{
return adoptRef(*new SVGPathSegArcAbs(element, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag));
}
private:
- SVGPathSegArcAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
+ SVGPathSegArcAbs(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
: SVGPathSegArc(element, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcRel.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcRel.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcRel.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegArcRel : public SVGPathSegArc {
public:
- static Ref<SVGPathSegArcRel> create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
+ static Ref<SVGPathSegArcRel> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
{
return adoptRef(*new SVGPathSegArcRel(element, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag));
}
private:
- SVGPathSegArcRel(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
+ SVGPathSegArcRel(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
: SVGPathSegArc(element, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegClosePath.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegClosePath.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegClosePath.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -27,13 +27,13 @@
class SVGPathSegClosePath : public SVGPathSegWithContext {
public:
- static Ref<SVGPathSegClosePath> create(SVGPathElement* element, SVGPathSegRole role)
+ static Ref<SVGPathSegClosePath> create(const SVGPathElement& element, SVGPathSegRole role)
{
return adoptRef(*new SVGPathSegClosePath(element, role));
}
private:
- SVGPathSegClosePath(SVGPathElement* element, SVGPathSegRole role)
+ SVGPathSegClosePath(const SVGPathElement& element, SVGPathSegRole role)
: SVGPathSegWithContext(element, role)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubic.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubic.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubic.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -27,7 +27,7 @@
class SVGPathSegCurvetoCubic : public SVGPathSegWithContext {
public:
- SVGPathSegCurvetoCubic(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
+ SVGPathSegCurvetoCubic(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
: SVGPathSegWithContext(element, role)
, m_x(x)
, m_y(y)
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicAbs.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicAbs.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicAbs.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegCurvetoCubicAbs : public SVGPathSegCurvetoCubic {
public:
- static Ref<SVGPathSegCurvetoCubicAbs> create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
+ static Ref<SVGPathSegCurvetoCubicAbs> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
{
return adoptRef(*new SVGPathSegCurvetoCubicAbs(element, role, x, y, x1, y1, x2, y2));
}
private:
- SVGPathSegCurvetoCubicAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
+ SVGPathSegCurvetoCubicAbs(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
: SVGPathSegCurvetoCubic(element, role, x, y, x1, y1, x2, y2)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicRel.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicRel.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicRel.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegCurvetoCubicRel : public SVGPathSegCurvetoCubic {
public:
- static Ref<SVGPathSegCurvetoCubicRel> create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
+ static Ref<SVGPathSegCurvetoCubicRel> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
{
return adoptRef(*new SVGPathSegCurvetoCubicRel(element, role, x, y, x1, y1, x2, y2));
}
private:
- SVGPathSegCurvetoCubicRel(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
+ SVGPathSegCurvetoCubicRel(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
: SVGPathSegCurvetoCubic(element, role, x, y, x1, y1, x2, y2)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -27,7 +27,7 @@
class SVGPathSegCurvetoCubicSmooth : public SVGPathSegWithContext {
public:
- SVGPathSegCurvetoCubicSmooth(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
+ SVGPathSegCurvetoCubicSmooth(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x2, float y2)
: SVGPathSegWithContext(element, role)
, m_x(x)
, m_y(y)
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothAbs.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothAbs.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothAbs.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegCurvetoCubicSmoothAbs : public SVGPathSegCurvetoCubicSmooth {
public:
- static Ref<SVGPathSegCurvetoCubicSmoothAbs> create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
+ static Ref<SVGPathSegCurvetoCubicSmoothAbs> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x2, float y2)
{
return adoptRef(*new SVGPathSegCurvetoCubicSmoothAbs(element, role, x, y, x2, y2));
}
private:
- SVGPathSegCurvetoCubicSmoothAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
+ SVGPathSegCurvetoCubicSmoothAbs(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x2, float y2)
: SVGPathSegCurvetoCubicSmooth(element, role, x, y, x2, y2)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothRel.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothRel.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothRel.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegCurvetoCubicSmoothRel : public SVGPathSegCurvetoCubicSmooth {
public:
- static Ref<SVGPathSegCurvetoCubicSmoothRel> create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
+ static Ref<SVGPathSegCurvetoCubicSmoothRel> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x2, float y2)
{
return adoptRef(*new SVGPathSegCurvetoCubicSmoothRel(element, role, x, y, x2, y2));
}
private:
- SVGPathSegCurvetoCubicSmoothRel(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
+ SVGPathSegCurvetoCubicSmoothRel(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x2, float y2)
: SVGPathSegCurvetoCubicSmooth(element, role, x, y, x2, y2)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -27,7 +27,7 @@
class SVGPathSegCurvetoQuadratic : public SVGPathSegWithContext {
public:
- SVGPathSegCurvetoQuadratic(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
+ SVGPathSegCurvetoQuadratic(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1)
: SVGPathSegWithContext(element, role)
, m_x(x)
, m_y(y)
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticAbs.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticAbs.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticAbs.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegCurvetoQuadraticAbs : public SVGPathSegCurvetoQuadratic {
public:
- static Ref<SVGPathSegCurvetoQuadraticAbs> create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
+ static Ref<SVGPathSegCurvetoQuadraticAbs> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1)
{
return adoptRef(*new SVGPathSegCurvetoQuadraticAbs(element, role, x, y, x1, y1));
}
private:
- SVGPathSegCurvetoQuadraticAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
+ SVGPathSegCurvetoQuadraticAbs(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1)
: SVGPathSegCurvetoQuadratic(element, role, x, y, x1, y1)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticRel.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticRel.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticRel.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegCurvetoQuadraticRel : public SVGPathSegCurvetoQuadratic {
public:
- static Ref<SVGPathSegCurvetoQuadraticRel> create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
+ static Ref<SVGPathSegCurvetoQuadraticRel> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1)
{
return adoptRef(*new SVGPathSegCurvetoQuadraticRel(element, role, x, y, x1, y1));
}
private:
- SVGPathSegCurvetoQuadraticRel(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
+ SVGPathSegCurvetoQuadraticRel(const SVGPathElement& element, SVGPathSegRole role, float x, float y, float x1, float y1)
: SVGPathSegCurvetoQuadratic(element, role, x, y, x1, y1)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothAbs.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothAbs.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothAbs.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegCurvetoQuadraticSmoothAbs : public SVGPathSegSingleCoordinate {
public:
- static Ref<SVGPathSegCurvetoQuadraticSmoothAbs> create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ static Ref<SVGPathSegCurvetoQuadraticSmoothAbs> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
{
return adoptRef(*new SVGPathSegCurvetoQuadraticSmoothAbs(element, role, x, y));
}
private:
- SVGPathSegCurvetoQuadraticSmoothAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ SVGPathSegCurvetoQuadraticSmoothAbs(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
: SVGPathSegSingleCoordinate(element, role, x, y)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothRel.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothRel.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothRel.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegCurvetoQuadraticSmoothRel : public SVGPathSegSingleCoordinate {
public:
- static Ref<SVGPathSegCurvetoQuadraticSmoothRel> create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ static Ref<SVGPathSegCurvetoQuadraticSmoothRel> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
{
return adoptRef(*new SVGPathSegCurvetoQuadraticSmoothRel(element, role, x, y));
}
private:
- SVGPathSegCurvetoQuadraticSmoothRel(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ SVGPathSegCurvetoQuadraticSmoothRel(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
: SVGPathSegSingleCoordinate(element, role, x, y)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoAbs.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoAbs.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoAbs.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegLinetoAbs : public SVGPathSegSingleCoordinate {
public:
- static Ref<SVGPathSegLinetoAbs> create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ static Ref<SVGPathSegLinetoAbs> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
{
return adoptRef(*new SVGPathSegLinetoAbs(element, role, x, y));
}
private:
- SVGPathSegLinetoAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ SVGPathSegLinetoAbs(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
: SVGPathSegSingleCoordinate(element, role, x, y)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontal.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontal.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontal.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -27,7 +27,7 @@
class SVGPathSegLinetoHorizontal : public SVGPathSegWithContext {
public:
- SVGPathSegLinetoHorizontal(SVGPathElement* element, SVGPathSegRole role, float x)
+ SVGPathSegLinetoHorizontal(const SVGPathElement& element, SVGPathSegRole role, float x)
: SVGPathSegWithContext(element, role)
, m_x(x)
{
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalAbs.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalAbs.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalAbs.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegLinetoHorizontalAbs : public SVGPathSegLinetoHorizontal {
public:
- static Ref<SVGPathSegLinetoHorizontalAbs> create(SVGPathElement* element, SVGPathSegRole role, float x)
+ static Ref<SVGPathSegLinetoHorizontalAbs> create(const SVGPathElement& element, SVGPathSegRole role, float x)
{
return adoptRef(*new SVGPathSegLinetoHorizontalAbs(element, role, x));
}
private:
- SVGPathSegLinetoHorizontalAbs(SVGPathElement* element, SVGPathSegRole role, float x)
+ SVGPathSegLinetoHorizontalAbs(const SVGPathElement& element, SVGPathSegRole role, float x)
: SVGPathSegLinetoHorizontal(element, role, x)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalRel.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalRel.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalRel.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegLinetoHorizontalRel : public SVGPathSegLinetoHorizontal {
public:
- static Ref<SVGPathSegLinetoHorizontalRel> create(SVGPathElement* element, SVGPathSegRole role, float x)
+ static Ref<SVGPathSegLinetoHorizontalRel> create(const SVGPathElement& element, SVGPathSegRole role, float x)
{
return adoptRef(*new SVGPathSegLinetoHorizontalRel(element, role, x));
}
private:
- SVGPathSegLinetoHorizontalRel(SVGPathElement* element, SVGPathSegRole role, float x)
+ SVGPathSegLinetoHorizontalRel(const SVGPathElement& element, SVGPathSegRole role, float x)
: SVGPathSegLinetoHorizontal(element, role, x)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoRel.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoRel.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoRel.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegLinetoRel : public SVGPathSegSingleCoordinate {
public:
- static Ref<SVGPathSegLinetoRel> create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ static Ref<SVGPathSegLinetoRel> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
{
return adoptRef(*new SVGPathSegLinetoRel(element, role, x, y));
}
private:
- SVGPathSegLinetoRel(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ SVGPathSegLinetoRel(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
: SVGPathSegSingleCoordinate(element, role, x, y)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVertical.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVertical.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVertical.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -27,7 +27,7 @@
class SVGPathSegLinetoVertical : public SVGPathSegWithContext {
public:
- SVGPathSegLinetoVertical(SVGPathElement* element, SVGPathSegRole role, float y)
+ SVGPathSegLinetoVertical(const SVGPathElement& element, SVGPathSegRole role, float y)
: SVGPathSegWithContext(element, role)
, m_y(y)
{
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalAbs.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalAbs.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalAbs.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegLinetoVerticalAbs : public SVGPathSegLinetoVertical {
public:
- static Ref<SVGPathSegLinetoVerticalAbs> create(SVGPathElement* element, SVGPathSegRole role, float y)
+ static Ref<SVGPathSegLinetoVerticalAbs> create(const SVGPathElement& element, SVGPathSegRole role, float y)
{
return adoptRef(*new SVGPathSegLinetoVerticalAbs(element, role, y));
}
private:
- SVGPathSegLinetoVerticalAbs(SVGPathElement* element, SVGPathSegRole role, float y)
+ SVGPathSegLinetoVerticalAbs(const SVGPathElement& element, SVGPathSegRole role, float y)
: SVGPathSegLinetoVertical(element, role, y)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalRel.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalRel.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalRel.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegLinetoVerticalRel : public SVGPathSegLinetoVertical {
public:
- static Ref<SVGPathSegLinetoVerticalRel> create(SVGPathElement* element, SVGPathSegRole role, float y)
+ static Ref<SVGPathSegLinetoVerticalRel> create(const SVGPathElement& element, SVGPathSegRole role, float y)
{
return adoptRef(*new SVGPathSegLinetoVerticalRel(element, role, y));
}
private:
- SVGPathSegLinetoVerticalRel(SVGPathElement* element, SVGPathSegRole role, float y)
+ SVGPathSegLinetoVerticalRel(const SVGPathElement& element, SVGPathSegRole role, float y)
: SVGPathSegLinetoVertical(element, role, y)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoAbs.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoAbs.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoAbs.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegMovetoAbs : public SVGPathSegSingleCoordinate {
public:
- static Ref<SVGPathSegMovetoAbs> create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ static Ref<SVGPathSegMovetoAbs> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
{
return adoptRef(*new SVGPathSegMovetoAbs(element, role, x, y));
}
private:
- SVGPathSegMovetoAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ SVGPathSegMovetoAbs(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
: SVGPathSegSingleCoordinate(element, role, x, y)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoRel.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoRel.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoRel.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -28,13 +28,13 @@
class SVGPathSegMovetoRel : public SVGPathSegSingleCoordinate {
public:
- static Ref<SVGPathSegMovetoRel> create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ static Ref<SVGPathSegMovetoRel> create(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
{
return adoptRef(*new SVGPathSegMovetoRel(element, role, x, y));
}
private:
- SVGPathSegMovetoRel(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ SVGPathSegMovetoRel(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
: SVGPathSegSingleCoordinate(element, role, x, y)
{
}
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegWithContext.h (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegWithContext.h 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegWithContext.h 2016-01-19 08:26:13 UTC (rev 195259)
@@ -26,25 +26,28 @@
class SVGPathSegWithContext : public SVGPathSeg {
public:
- SVGPathSegWithContext(SVGPathElement* element, SVGPathSegRole role)
+ SVGPathSegWithContext(const SVGPathElement& element, SVGPathSegRole role)
: m_role(role)
- , m_element(element)
+ , m_element(element.createWeakPtr())
{
}
SVGAnimatedProperty* animatedProperty() const
{
+ if (!m_element)
+ return nullptr;
+
switch (m_role) {
case PathSegUndefinedRole:
- return 0;
+ return nullptr;
case PathSegUnalteredRole:
return SVGAnimatedProperty::lookupWrapper<SVGPathElement, SVGAnimatedPathSegListPropertyTearOff>(m_element.get(), SVGPathElement::dPropertyInfo());
case PathSegNormalizedRole:
// FIXME: https://bugs.webkit.org/show_bug.cgi?id=15412 - Implement normalized path segment lists!
- return 0;
+ return nullptr;
};
- return 0;
+ return nullptr;
}
SVGPathElement* contextElement() const { return m_element.get(); }
@@ -53,24 +56,20 @@
void setContextAndRole(SVGPathElement* element, SVGPathSegRole role)
{
m_role = role;
- m_element = element;
+ m_element = element ? element->createWeakPtr() : WeakPtr<SVGPathElement>();
}
protected:
void commitChange()
{
- if (!m_element) {
- ASSERT(m_role == PathSegUndefinedRole);
+ if (!m_element || m_role == PathSegUndefinedRole)
return;
- }
-
- ASSERT(m_role != PathSegUndefinedRole);
m_element->pathSegListChanged(m_role);
}
private:
SVGPathSegRole m_role;
- RefPtr<SVGPathElement> m_element;
+ WeakPtr<SVGPathElement> m_element;
};
class SVGPathSegSingleCoordinate : public SVGPathSegWithContext {
@@ -90,7 +89,7 @@
}
protected:
- SVGPathSegSingleCoordinate(SVGPathElement* element, SVGPathSegRole role, float x, float y)
+ SVGPathSegSingleCoordinate(const SVGPathElement& element, SVGPathSegRole role, float x, float y)
: SVGPathSegWithContext(element, role)
, m_x(x)
, m_y(y)
Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/properties/SVGPathSegListPropertyTearOff.cpp (195258 => 195259)
--- releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/properties/SVGPathSegListPropertyTearOff.cpp 2016-01-19 08:23:53 UTC (rev 195258)
+++ releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/properties/SVGPathSegListPropertyTearOff.cpp 2016-01-19 08:26:13 UTC (rev 195259)
@@ -31,7 +31,7 @@
{
ASSERT(m_values);
for (auto& item : *m_values) {
- static_cast<SVGPathSegWithContext*>(item.get())->setContextAndRole(0, PathSegUndefinedRole);
+ static_cast<SVGPathSegWithContext*>(item.get())->setContextAndRole(nullptr, PathSegUndefinedRole);
}
}
@@ -66,7 +66,7 @@
if (index < m_values->size()) {
ListItemType replacedItem = m_values->at(index);
ASSERT(replacedItem);
- static_cast<SVGPathSegWithContext*>(replacedItem.get())->setContextAndRole(0, PathSegUndefinedRole);
+ static_cast<SVGPathSegWithContext*>(replacedItem.get())->setContextAndRole(nullptr, PathSegUndefinedRole);
}
return Base::replaceItemValues(newItem, index, ec);
@@ -76,7 +76,7 @@
{
SVGPathSegListPropertyTearOff::ListItemType removedItem = SVGPathSegListPropertyTearOff::Base::removeItemValues(index, ec);
if (removedItem)
- static_cast<SVGPathSegWithContext*>(removedItem.get())->setContextAndRole(0, PathSegUndefinedRole);
+ static_cast<SVGPathSegWithContext*>(removedItem.get())->setContextAndRole(nullptr, PathSegUndefinedRole);
return removedItem;
}