diff --git a/components/canvas/canvas_data.rs b/components/canvas/canvas_data.rs index ab30dbe97411..2b993d62bab8 100644 --- a/components/canvas/canvas_data.rs +++ b/components/canvas/canvas_data.rs @@ -798,7 +798,10 @@ impl<'a> CanvasData<'a> { pub fn arc_to(&mut self, cp1: &Point2D, cp2: &Point2D, radius: f32) { let cp0 = match self.path_builder().current_point() { Some(p) => p, - None => return, + None => { + self.path_builder().move_to(cp1); + cp1.clone() + }, }; let cp1 = *cp1; let cp2 = *cp2; diff --git a/tests/wpt/metadata/2dcontext/path-objects/2d.path.arcTo.ensuresubpath.2.html.ini b/tests/wpt/metadata/2dcontext/path-objects/2d.path.arcTo.ensuresubpath.2.html.ini deleted file mode 100644 index 72a5d82aa29a..000000000000 --- a/tests/wpt/metadata/2dcontext/path-objects/2d.path.arcTo.ensuresubpath.2.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[2d.path.arcTo.ensuresubpath.2.html] - [If there is no subpath, the first control point is added] - expected: FAIL - diff --git a/tests/wpt/metadata/offscreen-canvas/path-objects/2d.path.arcTo.ensuresubpath.2.html.ini b/tests/wpt/metadata/offscreen-canvas/path-objects/2d.path.arcTo.ensuresubpath.2.html.ini deleted file mode 100644 index 72a5d82aa29a..000000000000 --- a/tests/wpt/metadata/offscreen-canvas/path-objects/2d.path.arcTo.ensuresubpath.2.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[2d.path.arcTo.ensuresubpath.2.html] - [If there is no subpath, the first control point is added] - expected: FAIL -