summaryrefslogtreecommitdiffstats
path: root/WebCore/svg/graphics/SVGResourceMarker.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/svg/graphics/SVGResourceMarker.cpp')
-rw-r--r--WebCore/svg/graphics/SVGResourceMarker.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/WebCore/svg/graphics/SVGResourceMarker.cpp b/WebCore/svg/graphics/SVGResourceMarker.cpp
index 3649321..c50f5e3 100644
--- a/WebCore/svg/graphics/SVGResourceMarker.cpp
+++ b/WebCore/svg/graphics/SVGResourceMarker.cpp
@@ -28,10 +28,11 @@
#if ENABLE(SVG)
#include "SVGResourceMarker.h"
-#include "AffineTransform.h"
+#include "TransformationMatrix.h"
#include "GraphicsContext.h"
#include "RenderSVGViewportContainer.h"
#include "TextStream.h"
+#include <wtf/StdLibExtras.h>
namespace WebCore {
@@ -65,7 +66,7 @@ void SVGResourceMarker::draw(GraphicsContext* context, const FloatRect& rect, do
if (!m_marker)
return;
- static HashSet<SVGResourceMarker*> currentlyDrawingMarkers;
+ DEFINE_STATIC_LOCAL(HashSet<SVGResourceMarker*>, currentlyDrawingMarkers, ());
// avoid drawing circular marker references
if (currentlyDrawingMarkers.contains(this))
@@ -73,13 +74,13 @@ void SVGResourceMarker::draw(GraphicsContext* context, const FloatRect& rect, do
currentlyDrawingMarkers.add(this);
- AffineTransform transform;
+ TransformationMatrix transform;
transform.translate(x, y);
transform.rotate(m_angle > -1 ? m_angle : angle);
// refX and refY are given in coordinates relative to the viewport established by the marker, yet they affect
// the translation performed on the viewport itself.
- AffineTransform viewportTransform;
+ TransformationMatrix viewportTransform;
if (m_useStrokeWidth)
viewportTransform.scale(strokeWidth, strokeWidth);
viewportTransform *= m_marker->viewportTransform();