<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[195259] releases/WebKitGTK/webkit-2.10/Source/WebCore</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/195259">195259</a></dd>
<dt>Author</dt> <dd>carlosgc@webkit.org</dd>
<dt>Date</dt> <dd>2016-01-19 00:26:13 -0800 (Tue, 19 Jan 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>Merge <a href="http://trac.webkit.org/projects/webkit/changeset/194964">r194964</a> - Reference cycle between SVGPathElement and SVGPathSegWithContext leaks Document
https://bugs.webkit.org/show_bug.cgi?id=151810

Patch by Said Abou-Hallawa &lt;sabouhallawa@apple.com&gt; on 2016-01-13
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):</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoreChangeLog">releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathElementcpp">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.cpp</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathElementh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegArch">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArc.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegArcAbsh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcAbs.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegArcRelh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcRel.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegClosePathh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegClosePath.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubich">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubic.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicAbsh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicAbs.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicRelh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicRel.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicSmoothh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicSmoothAbsh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothAbs.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicSmoothRelh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothRel.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadratich">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadraticAbsh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticAbs.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadraticRelh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticRel.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadraticSmoothAbsh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothAbs.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadraticSmoothRelh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothRel.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoAbsh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoAbs.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoHorizontalh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontal.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoHorizontalAbsh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalAbs.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoHorizontalRelh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalRel.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoRelh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoRel.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoVerticalh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVertical.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoVerticalAbsh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalAbs.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoVerticalRelh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalRel.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegMovetoAbsh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoAbs.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegMovetoRelh">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoRel.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegWithContexth">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegWithContext.h</a></li>
<li><a href="#releasesWebKitGTKwebkit210SourceWebCoresvgpropertiesSVGPathSegListPropertyTearOffcpp">releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/properties/SVGPathSegListPropertyTearOff.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="releasesWebKitGTKwebkit210SourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/ChangeLog (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -1,3 +1,124 @@
</span><ins>+2016-01-13  Said Abou-Hallawa  &lt;sabouhallawa@apple.com&gt;
+
+        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):
+
</ins><span class="cx"> 2016-01-13  YongGeol Jung  &lt;yg48.jung@samsung.com&gt;
</span><span class="cx"> 
</span><span class="cx">         [TexMap] BitmapTextureGL is not released while scene is updated continuously.
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathElementcpp"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.cpp (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -82,6 +82,7 @@
</span><span class="cx">     : SVGGraphicsElement(tagName, document)
</span><span class="cx">     , m_pathByteStream(std::make_unique&lt;SVGPathByteStream&gt;())
</span><span class="cx">     , m_pathSegList(PathSegUnalteredRole)
</span><ins>+    , m_weakPtrFactory(this)
</ins><span class="cx">     , m_isAnimValObserved(false)
</span><span class="cx"> {
</span><span class="cx">     ASSERT(hasTagName(SVGNames::pathTag));
</span><span class="lines">@@ -116,97 +117,97 @@
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegClosePath&gt; SVGPathElement::createSVGPathSegClosePath(SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegClosePath::create(this, role);
</del><ins>+    return SVGPathSegClosePath::create(*this, role);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegMovetoAbs&gt; SVGPathElement::createSVGPathSegMovetoAbs(float x, float y, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegMovetoAbs::create(this, role, x, y);
</del><ins>+    return SVGPathSegMovetoAbs::create(*this, role, x, y);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegMovetoRel&gt; SVGPathElement::createSVGPathSegMovetoRel(float x, float y, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegMovetoRel::create(this, role, x, y);
</del><ins>+    return SVGPathSegMovetoRel::create(*this, role, x, y);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegLinetoAbs&gt; SVGPathElement::createSVGPathSegLinetoAbs(float x, float y, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegLinetoAbs::create(this, role, x, y);
</del><ins>+    return SVGPathSegLinetoAbs::create(*this, role, x, y);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegLinetoRel&gt; SVGPathElement::createSVGPathSegLinetoRel(float x, float y, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegLinetoRel::create(this, role, x, y);
</del><ins>+    return SVGPathSegLinetoRel::create(*this, role, x, y);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegCurvetoCubicAbs&gt; SVGPathElement::createSVGPathSegCurvetoCubicAbs(float x, float y, float x1, float y1, float x2, float y2, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegCurvetoCubicAbs::create(this, role, x, y, x1, y1, x2, y2);
</del><ins>+    return SVGPathSegCurvetoCubicAbs::create(*this, role, x, y, x1, y1, x2, y2);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegCurvetoCubicRel&gt; SVGPathElement::createSVGPathSegCurvetoCubicRel(float x, float y, float x1, float y1, float x2, float y2, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegCurvetoCubicRel::create(this, role, x, y, x1, y1, x2, y2);
</del><ins>+    return SVGPathSegCurvetoCubicRel::create(*this, role, x, y, x1, y1, x2, y2);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegCurvetoQuadraticAbs&gt; SVGPathElement::createSVGPathSegCurvetoQuadraticAbs(float x, float y, float x1, float y1, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegCurvetoQuadraticAbs::create(this, role, x, y, x1, y1);
</del><ins>+    return SVGPathSegCurvetoQuadraticAbs::create(*this, role, x, y, x1, y1);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegCurvetoQuadraticRel&gt; SVGPathElement::createSVGPathSegCurvetoQuadraticRel(float x, float y, float x1, float y1, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegCurvetoQuadraticRel::create(this, role, x, y, x1, y1);
</del><ins>+    return SVGPathSegCurvetoQuadraticRel::create(*this, role, x, y, x1, y1);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegArcAbs&gt; SVGPathElement::createSVGPathSegArcAbs(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegArcAbs::create(this, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag);
</del><ins>+    return SVGPathSegArcAbs::create(*this, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegArcRel&gt; SVGPathElement::createSVGPathSegArcRel(float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegArcRel::create(this, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag);
</del><ins>+    return SVGPathSegArcRel::create(*this, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegLinetoHorizontalAbs&gt; SVGPathElement::createSVGPathSegLinetoHorizontalAbs(float x, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegLinetoHorizontalAbs::create(this, role, x);
</del><ins>+    return SVGPathSegLinetoHorizontalAbs::create(*this, role, x);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegLinetoHorizontalRel&gt; SVGPathElement::createSVGPathSegLinetoHorizontalRel(float x, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegLinetoHorizontalRel::create(this, role, x);
</del><ins>+    return SVGPathSegLinetoHorizontalRel::create(*this, role, x);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegLinetoVerticalAbs&gt; SVGPathElement::createSVGPathSegLinetoVerticalAbs(float y, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegLinetoVerticalAbs::create(this, role, y);
</del><ins>+    return SVGPathSegLinetoVerticalAbs::create(*this, role, y);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegLinetoVerticalRel&gt; SVGPathElement::createSVGPathSegLinetoVerticalRel(float y, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegLinetoVerticalRel::create(this, role, y);
</del><ins>+    return SVGPathSegLinetoVerticalRel::create(*this, role, y);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegCurvetoCubicSmoothAbs&gt; SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs(float x, float y, float x2, float y2, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegCurvetoCubicSmoothAbs::create(this, role, x, y, x2, y2);
</del><ins>+    return SVGPathSegCurvetoCubicSmoothAbs::create(*this, role, x, y, x2, y2);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegCurvetoCubicSmoothRel&gt; SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel(float x, float y, float x2, float y2, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegCurvetoCubicSmoothRel::create(this, role, x, y, x2, y2);
</del><ins>+    return SVGPathSegCurvetoCubicSmoothRel::create(*this, role, x, y, x2, y2);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegCurvetoQuadraticSmoothAbs&gt; SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs(float x, float y, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegCurvetoQuadraticSmoothAbs::create(this, role, x, y);
</del><ins>+    return SVGPathSegCurvetoQuadraticSmoothAbs::create(*this, role, x, y);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> Ref&lt;SVGPathSegCurvetoQuadraticSmoothRel&gt; SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel(float x, float y, SVGPathSegRole role)
</span><span class="cx"> {
</span><del>-    return SVGPathSegCurvetoQuadraticSmoothRel::create(this, role, x, y);
</del><ins>+    return SVGPathSegCurvetoQuadraticSmoothRel::create(*this, role, x, y);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool SVGPathElement::isSupportedAttribute(const QualifiedName&amp; attrName)
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathElementh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathElement.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -97,6 +97,8 @@
</span><span class="cx"> 
</span><span class="cx">     bool isAnimValObserved() const { return m_isAnimValObserved; }
</span><span class="cx"> 
</span><ins>+    WeakPtr&lt;SVGPathElement&gt; createWeakPtr() const { return m_weakPtrFactory.createWeakPtr(); }
+
</ins><span class="cx"> private:
</span><span class="cx">     SVGPathElement(const QualifiedName&amp;, Document&amp;);
</span><span class="cx"> 
</span><span class="lines">@@ -126,6 +128,7 @@
</span><span class="cx"> private:
</span><span class="cx">     std::unique_ptr&lt;SVGPathByteStream&gt; m_pathByteStream;
</span><span class="cx">     mutable SVGSynchronizableAnimatedProperty&lt;SVGPathSegList&gt; m_pathSegList;
</span><ins>+    WeakPtrFactory&lt;SVGPathElement&gt; m_weakPtrFactory;
</ins><span class="cx">     bool m_isAnimValObserved;
</span><span class="cx"> };
</span><span class="cx"> 
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegArch"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArc.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegArc : public SVGPathSegWithContext {
</span><span class="cx"> public:
</span><del>-    SVGPathSegArc(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</del><ins>+    SVGPathSegArc(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</ins><span class="cx">         : SVGPathSegWithContext(element, role)
</span><span class="cx">         , m_x(x)
</span><span class="cx">         , m_y(y)
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegArcAbsh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcAbs.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegArcAbs : public SVGPathSegArc {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegArcAbs&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</del><ins>+    static Ref&lt;SVGPathSegArcAbs&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegArcAbs(element, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegArcAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</del><ins>+    SVGPathSegArcAbs(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</ins><span class="cx">         : SVGPathSegArc(element, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegArcRelh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegArcRel.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegArcRel : public SVGPathSegArc {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegArcRel&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</del><ins>+    static Ref&lt;SVGPathSegArcRel&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegArcRel(element, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegArcRel(SVGPathElement* element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</del><ins>+    SVGPathSegArcRel(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float r1, float r2, float angle, bool largeArcFlag, bool sweepFlag)
</ins><span class="cx">         : SVGPathSegArc(element, role, x, y, r1, r2, angle, largeArcFlag, sweepFlag)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegClosePathh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegClosePath.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -27,13 +27,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegClosePath : public SVGPathSegWithContext {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegClosePath&gt; create(SVGPathElement* element, SVGPathSegRole role)
</del><ins>+    static Ref&lt;SVGPathSegClosePath&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegClosePath(element, role));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegClosePath(SVGPathElement* element, SVGPathSegRole role)
</del><ins>+    SVGPathSegClosePath(const SVGPathElement&amp; element, SVGPathSegRole role)
</ins><span class="cx">         : SVGPathSegWithContext(element, role)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubich"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubic.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoCubic : public SVGPathSegWithContext { 
</span><span class="cx"> public:
</span><del>-    SVGPathSegCurvetoCubic(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</del><ins>+    SVGPathSegCurvetoCubic(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</ins><span class="cx">         : SVGPathSegWithContext(element, role)
</span><span class="cx">         , m_x(x)
</span><span class="cx">         , m_y(y)
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicAbsh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicAbs.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoCubicAbs : public SVGPathSegCurvetoCubic {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegCurvetoCubicAbs&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</del><ins>+    static Ref&lt;SVGPathSegCurvetoCubicAbs&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegCurvetoCubicAbs(element, role, x, y, x1, y1, x2, y2));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegCurvetoCubicAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</del><ins>+    SVGPathSegCurvetoCubicAbs(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</ins><span class="cx">         : SVGPathSegCurvetoCubic(element, role, x, y, x1, y1, x2, y2)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicRelh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicRel.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoCubicRel : public SVGPathSegCurvetoCubic {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegCurvetoCubicRel&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</del><ins>+    static Ref&lt;SVGPathSegCurvetoCubicRel&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegCurvetoCubicRel(element, role, x, y, x1, y1, x2, y2));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegCurvetoCubicRel(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</del><ins>+    SVGPathSegCurvetoCubicRel(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1, float x2, float y2)
</ins><span class="cx">         : SVGPathSegCurvetoCubic(element, role, x, y, x1, y1, x2, y2)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicSmoothh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoCubicSmooth : public SVGPathSegWithContext {
</span><span class="cx"> public:
</span><del>-    SVGPathSegCurvetoCubicSmooth(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
</del><ins>+    SVGPathSegCurvetoCubicSmooth(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x2, float y2)
</ins><span class="cx">         : SVGPathSegWithContext(element, role)
</span><span class="cx">         , m_x(x)
</span><span class="cx">         , m_y(y)
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicSmoothAbsh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothAbs.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoCubicSmoothAbs : public SVGPathSegCurvetoCubicSmooth {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegCurvetoCubicSmoothAbs&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
</del><ins>+    static Ref&lt;SVGPathSegCurvetoCubicSmoothAbs&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x2, float y2)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegCurvetoCubicSmoothAbs(element, role, x, y, x2, y2));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegCurvetoCubicSmoothAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
</del><ins>+    SVGPathSegCurvetoCubicSmoothAbs(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x2, float y2)
</ins><span class="cx">         : SVGPathSegCurvetoCubicSmooth(element, role, x, y, x2, y2)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoCubicSmoothRelh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoCubicSmoothRel.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoCubicSmoothRel : public SVGPathSegCurvetoCubicSmooth {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegCurvetoCubicSmoothRel&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
</del><ins>+    static Ref&lt;SVGPathSegCurvetoCubicSmoothRel&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x2, float y2)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegCurvetoCubicSmoothRel(element, role, x, y, x2, y2));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegCurvetoCubicSmoothRel(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x2, float y2)
</del><ins>+    SVGPathSegCurvetoCubicSmoothRel(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x2, float y2)
</ins><span class="cx">         : SVGPathSegCurvetoCubicSmooth(element, role, x, y, x2, y2)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadratich"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoQuadratic : public SVGPathSegWithContext { 
</span><span class="cx"> public:
</span><del>-    SVGPathSegCurvetoQuadratic(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
</del><ins>+    SVGPathSegCurvetoQuadratic(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1)
</ins><span class="cx">         : SVGPathSegWithContext(element, role)
</span><span class="cx">         , m_x(x)
</span><span class="cx">         , m_y(y)
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadraticAbsh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticAbs.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoQuadraticAbs : public SVGPathSegCurvetoQuadratic {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegCurvetoQuadraticAbs&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
</del><ins>+    static Ref&lt;SVGPathSegCurvetoQuadraticAbs&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegCurvetoQuadraticAbs(element, role, x, y, x1, y1));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegCurvetoQuadraticAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
</del><ins>+    SVGPathSegCurvetoQuadraticAbs(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1)
</ins><span class="cx">         : SVGPathSegCurvetoQuadratic(element, role, x, y, x1, y1)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadraticRelh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticRel.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoQuadraticRel : public SVGPathSegCurvetoQuadratic {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegCurvetoQuadraticRel&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
</del><ins>+    static Ref&lt;SVGPathSegCurvetoQuadraticRel&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegCurvetoQuadraticRel(element, role, x, y, x1, y1));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegCurvetoQuadraticRel(SVGPathElement* element, SVGPathSegRole role, float x, float y, float x1, float y1)
</del><ins>+    SVGPathSegCurvetoQuadraticRel(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y, float x1, float y1)
</ins><span class="cx">         : SVGPathSegCurvetoQuadratic(element, role, x, y, x1, y1)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadraticSmoothAbsh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothAbs.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoQuadraticSmoothAbs : public SVGPathSegSingleCoordinate {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegCurvetoQuadraticSmoothAbs&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    static Ref&lt;SVGPathSegCurvetoQuadraticSmoothAbs&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegCurvetoQuadraticSmoothAbs(element, role, x, y));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegCurvetoQuadraticSmoothAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    SVGPathSegCurvetoQuadraticSmoothAbs(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">         : SVGPathSegSingleCoordinate(element, role, x, y)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegCurvetoQuadraticSmoothRelh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmoothRel.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegCurvetoQuadraticSmoothRel : public SVGPathSegSingleCoordinate {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegCurvetoQuadraticSmoothRel&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    static Ref&lt;SVGPathSegCurvetoQuadraticSmoothRel&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegCurvetoQuadraticSmoothRel(element, role, x, y));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegCurvetoQuadraticSmoothRel(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    SVGPathSegCurvetoQuadraticSmoothRel(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">         : SVGPathSegSingleCoordinate(element, role, x, y)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoAbsh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoAbs.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegLinetoAbs : public SVGPathSegSingleCoordinate {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegLinetoAbs&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    static Ref&lt;SVGPathSegLinetoAbs&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegLinetoAbs(element, role, x, y));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegLinetoAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    SVGPathSegLinetoAbs(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">         : SVGPathSegSingleCoordinate(element, role, x, y)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoHorizontalh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontal.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegLinetoHorizontal : public SVGPathSegWithContext {
</span><span class="cx"> public:
</span><del>-    SVGPathSegLinetoHorizontal(SVGPathElement* element, SVGPathSegRole role, float x)
</del><ins>+    SVGPathSegLinetoHorizontal(const SVGPathElement&amp; element, SVGPathSegRole role, float x)
</ins><span class="cx">         : SVGPathSegWithContext(element, role)
</span><span class="cx">         , m_x(x)
</span><span class="cx">     {
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoHorizontalAbsh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalAbs.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegLinetoHorizontalAbs : public SVGPathSegLinetoHorizontal {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegLinetoHorizontalAbs&gt; create(SVGPathElement* element, SVGPathSegRole role, float x)
</del><ins>+    static Ref&lt;SVGPathSegLinetoHorizontalAbs&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegLinetoHorizontalAbs(element, role, x));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegLinetoHorizontalAbs(SVGPathElement* element, SVGPathSegRole role, float x)
</del><ins>+    SVGPathSegLinetoHorizontalAbs(const SVGPathElement&amp; element, SVGPathSegRole role, float x)
</ins><span class="cx">         : SVGPathSegLinetoHorizontal(element, role, x)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoHorizontalRelh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoHorizontalRel.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegLinetoHorizontalRel : public SVGPathSegLinetoHorizontal {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegLinetoHorizontalRel&gt; create(SVGPathElement* element, SVGPathSegRole role, float x)
</del><ins>+    static Ref&lt;SVGPathSegLinetoHorizontalRel&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegLinetoHorizontalRel(element, role, x));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegLinetoHorizontalRel(SVGPathElement* element, SVGPathSegRole role, float x)
</del><ins>+    SVGPathSegLinetoHorizontalRel(const SVGPathElement&amp; element, SVGPathSegRole role, float x)
</ins><span class="cx">         : SVGPathSegLinetoHorizontal(element, role, x)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoRelh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoRel.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegLinetoRel : public SVGPathSegSingleCoordinate {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegLinetoRel&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    static Ref&lt;SVGPathSegLinetoRel&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegLinetoRel(element, role, x, y));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegLinetoRel(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    SVGPathSegLinetoRel(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">         : SVGPathSegSingleCoordinate(element, role, x, y)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoVerticalh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVertical.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -27,7 +27,7 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegLinetoVertical : public SVGPathSegWithContext {
</span><span class="cx"> public:
</span><del>-    SVGPathSegLinetoVertical(SVGPathElement* element, SVGPathSegRole role, float y)
</del><ins>+    SVGPathSegLinetoVertical(const SVGPathElement&amp; element, SVGPathSegRole role, float y)
</ins><span class="cx">         : SVGPathSegWithContext(element, role)
</span><span class="cx">         , m_y(y)
</span><span class="cx">     {
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoVerticalAbsh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalAbs.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegLinetoVerticalAbs : public SVGPathSegLinetoVertical {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegLinetoVerticalAbs&gt; create(SVGPathElement* element, SVGPathSegRole role, float y)
</del><ins>+    static Ref&lt;SVGPathSegLinetoVerticalAbs&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float y)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegLinetoVerticalAbs(element, role, y));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegLinetoVerticalAbs(SVGPathElement* element, SVGPathSegRole role, float y)
</del><ins>+    SVGPathSegLinetoVerticalAbs(const SVGPathElement&amp; element, SVGPathSegRole role, float y)
</ins><span class="cx">         : SVGPathSegLinetoVertical(element, role, y)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegLinetoVerticalRelh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegLinetoVerticalRel.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegLinetoVerticalRel : public SVGPathSegLinetoVertical {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegLinetoVerticalRel&gt; create(SVGPathElement* element, SVGPathSegRole role, float y)
</del><ins>+    static Ref&lt;SVGPathSegLinetoVerticalRel&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float y)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegLinetoVerticalRel(element, role, y));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegLinetoVerticalRel(SVGPathElement* element, SVGPathSegRole role, float y)
</del><ins>+    SVGPathSegLinetoVerticalRel(const SVGPathElement&amp; element, SVGPathSegRole role, float y)
</ins><span class="cx">         : SVGPathSegLinetoVertical(element, role, y)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegMovetoAbsh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoAbs.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegMovetoAbs : public SVGPathSegSingleCoordinate {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegMovetoAbs&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    static Ref&lt;SVGPathSegMovetoAbs&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegMovetoAbs(element, role, x, y));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegMovetoAbs(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    SVGPathSegMovetoAbs(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">         : SVGPathSegSingleCoordinate(element, role, x, y)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegMovetoRelh"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegMovetoRel.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -28,13 +28,13 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegMovetoRel : public SVGPathSegSingleCoordinate {
</span><span class="cx"> public:
</span><del>-    static Ref&lt;SVGPathSegMovetoRel&gt; create(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    static Ref&lt;SVGPathSegMovetoRel&gt; create(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">     {
</span><span class="cx">         return adoptRef(*new SVGPathSegMovetoRel(element, role, x, y));
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><del>-    SVGPathSegMovetoRel(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    SVGPathSegMovetoRel(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">         : SVGPathSegSingleCoordinate(element, role, x, y)
</span><span class="cx">     {
</span><span class="cx">     }
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgSVGPathSegWithContexth"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/SVGPathSegWithContext.h (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -26,25 +26,28 @@
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegWithContext : public SVGPathSeg {
</span><span class="cx"> public:
</span><del>-    SVGPathSegWithContext(SVGPathElement* element, SVGPathSegRole role)
</del><ins>+    SVGPathSegWithContext(const SVGPathElement&amp; element, SVGPathSegRole role)
</ins><span class="cx">         : m_role(role)
</span><del>-        , m_element(element)
</del><ins>+        , m_element(element.createWeakPtr())
</ins><span class="cx">     {
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     SVGAnimatedProperty* animatedProperty() const
</span><span class="cx">     {
</span><ins>+        if (!m_element)
+            return nullptr;
+
</ins><span class="cx">         switch (m_role) {
</span><span class="cx">         case PathSegUndefinedRole:
</span><del>-            return 0;
</del><ins>+            return nullptr;
</ins><span class="cx">         case PathSegUnalteredRole:
</span><span class="cx">             return SVGAnimatedProperty::lookupWrapper&lt;SVGPathElement, SVGAnimatedPathSegListPropertyTearOff&gt;(m_element.get(), SVGPathElement::dPropertyInfo());
</span><span class="cx">         case PathSegNormalizedRole:
</span><span class="cx">             // FIXME: https://bugs.webkit.org/show_bug.cgi?id=15412 - Implement normalized path segment lists!
</span><del>-            return 0;
</del><ins>+            return nullptr;
</ins><span class="cx">         };
</span><span class="cx"> 
</span><del>-        return 0;
</del><ins>+        return nullptr;
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     SVGPathElement* contextElement() const { return m_element.get(); }
</span><span class="lines">@@ -53,24 +56,20 @@
</span><span class="cx">     void setContextAndRole(SVGPathElement* element, SVGPathSegRole role)
</span><span class="cx">     {
</span><span class="cx">         m_role = role;
</span><del>-        m_element = element;
</del><ins>+        m_element = element ? element-&gt;createWeakPtr() : WeakPtr&lt;SVGPathElement&gt;();
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> protected:
</span><span class="cx">     void commitChange()
</span><span class="cx">     {
</span><del>-        if (!m_element) {
-            ASSERT(m_role == PathSegUndefinedRole);
</del><ins>+        if (!m_element || m_role == PathSegUndefinedRole)
</ins><span class="cx">             return;
</span><del>-        }
-
-        ASSERT(m_role != PathSegUndefinedRole);
</del><span class="cx">         m_element-&gt;pathSegListChanged(m_role);
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> private:
</span><span class="cx">     SVGPathSegRole m_role;
</span><del>-    RefPtr&lt;SVGPathElement&gt; m_element;
</del><ins>+    WeakPtr&lt;SVGPathElement&gt; m_element;
</ins><span class="cx"> };
</span><span class="cx"> 
</span><span class="cx"> class SVGPathSegSingleCoordinate : public SVGPathSegWithContext { 
</span><span class="lines">@@ -90,7 +89,7 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx"> protected:
</span><del>-    SVGPathSegSingleCoordinate(SVGPathElement* element, SVGPathSegRole role, float x, float y)
</del><ins>+    SVGPathSegSingleCoordinate(const SVGPathElement&amp; element, SVGPathSegRole role, float x, float y)
</ins><span class="cx">         : SVGPathSegWithContext(element, role)
</span><span class="cx">         , m_x(x)
</span><span class="cx">         , m_y(y)
</span></span></pre></div>
<a id="releasesWebKitGTKwebkit210SourceWebCoresvgpropertiesSVGPathSegListPropertyTearOffcpp"></a>
<div class="modfile"><h4>Modified: releases/WebKitGTK/webkit-2.10/Source/WebCore/svg/properties/SVGPathSegListPropertyTearOff.cpp (195258 => 195259)</h4>
<pre class="diff"><span>
<span class="info">--- 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)
</span><span class="lines">@@ -31,7 +31,7 @@
</span><span class="cx"> {
</span><span class="cx">     ASSERT(m_values);
</span><span class="cx">     for (auto&amp; item : *m_values) {
</span><del>-        static_cast&lt;SVGPathSegWithContext*&gt;(item.get())-&gt;setContextAndRole(0, PathSegUndefinedRole);
</del><ins>+        static_cast&lt;SVGPathSegWithContext*&gt;(item.get())-&gt;setContextAndRole(nullptr, PathSegUndefinedRole);
</ins><span class="cx">     }
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -66,7 +66,7 @@
</span><span class="cx">     if (index &lt; m_values-&gt;size()) {
</span><span class="cx">         ListItemType replacedItem = m_values-&gt;at(index);
</span><span class="cx">         ASSERT(replacedItem);
</span><del>-        static_cast&lt;SVGPathSegWithContext*&gt;(replacedItem.get())-&gt;setContextAndRole(0, PathSegUndefinedRole);
</del><ins>+        static_cast&lt;SVGPathSegWithContext*&gt;(replacedItem.get())-&gt;setContextAndRole(nullptr, PathSegUndefinedRole);
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     return Base::replaceItemValues(newItem, index, ec);
</span><span class="lines">@@ -76,7 +76,7 @@
</span><span class="cx"> {
</span><span class="cx">     SVGPathSegListPropertyTearOff::ListItemType removedItem = SVGPathSegListPropertyTearOff::Base::removeItemValues(index, ec);
</span><span class="cx">     if (removedItem)
</span><del>-        static_cast&lt;SVGPathSegWithContext*&gt;(removedItem.get())-&gt;setContextAndRole(0, PathSegUndefinedRole);
</del><ins>+        static_cast&lt;SVGPathSegWithContext*&gt;(removedItem.get())-&gt;setContextAndRole(nullptr, PathSegUndefinedRole);
</ins><span class="cx">     return removedItem;
</span><span class="cx"> }
</span><span class="cx"> 
</span></span></pre>
</div>
</div>

</body>
</html>