WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
NEW
33115
PathElementAddQuadCurveToPoint not handled for <marker>
https://bugs.webkit.org/show_bug.cgi?id=33115
Summary
PathElementAddQuadCurveToPoint not handled for <marker>
Nikolas Zimmermann
Reported
2010-01-02 13:46:54 PST
Marker elements don't support paths which contain PathElementAddQuadCurveToPoint elements. See SVGMarkerLayoutInfo, updateMarkerDataForElement() method.
Attachments
Add attachment
proposed patch, testcase, etc.
Ahmad Saleem
Comment 1
2023-10-05 06:30:06 PDT
Following Blink commit:
https://chromium.googlesource.com/chromium/src.git/+/7003bed16de3861e47d6bb0287ba4d6bffcfea04
Removed this FIXME:
https://searchfox.org/wubkat/source/Source/WebCore/rendering/svg/SVGMarkerData.h#118
and changed it into: case PathElement::Type::AddQuadCurveToPoint: m_inslopePoints[0] = points[0]; m_inslopePoints[1] = points[1]; m_origin = points[1]; break;
Ahmad Saleem
Comment 2
2025-12-22 20:05:42 PST
case PathElement::Type::AddQuadCurveToPoint: // Compute tangents for quadratic bezier curve // Start tangent: from origin to control point // End tangent: from control point to end point { FloatSize startTangent = points[0] - m_origin; FloatSize endTangent = points[1] - points[0]; if (startTangent.isZero()) { // If start tangent is zero, use the end tangent for both m_inslopePoints[0] = m_origin; m_inslopePoints[1] = points[1]; } else if (endTangent.isZero()) { // If end tangent is zero, use the start tangent for both m_inslopePoints[0] = m_origin; m_inslopePoints[1] = points[0]; } else { // Normal case: use control point for in-slope calculation m_inslopePoints[0] = points[0]; m_inslopePoints[1] = points[1]; } m_origin = points[1]; } break;
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug