Fix ellipse hit testing in the non-circle case

RenderSVGEllipse::shapeDependentStrokeContains() was incorrectly
considering the outer and inner offset curves of the ellipse's stroke
(the outer and inner boundary curves) to be the ellipses formed by
increasing/decreasing the radii by half the stroke width; however, the
offset curves are only ellipses when the ellipse is a circle. This would
cause problems where shapeDependentStrokeContains() would incorrectly
return false for points that actually are in the stroke of the ellipse.

Except in the case of continuous-stroke circles, we now always fall back
to the graphics library for the stroke hit test result.

BUG=393143

Review URL: https://codereview.chromium.org/877553002

git-svn-id: svn://svn.chromium.org/blink/trunk@189109 bbb929c8-8fbe-4397-9dbb-9b2b20218538
5 files changed