diff --git a/components/canvas/canvas_data.rs b/components/canvas/canvas_data.rs index 7f7e539b102..5e2348b58d7 100644 --- a/components/canvas/canvas_data.rs +++ b/components/canvas/canvas_data.rs @@ -771,8 +771,8 @@ impl<'a> CanvasData<'a> { } pub fn quadratic_curve_to(&mut self, cp: &Point2D, endpoint: &Point2D) { - if self.path_builder().current_point().is_none() { - self.path_builder().move_to(cp); + if self.path_state.is_none() { + self.move_to(cp); } self.path_builder().quadratic_curve_to(cp, endpoint); } @@ -783,6 +783,9 @@ impl<'a> CanvasData<'a> { cp2: &Point2D, endpoint: &Point2D, ) { + if self.path_state.is_none() { + self.move_to(cp1); + } self.path_builder().bezier_curve_to(cp1, cp2, endpoint); } diff --git a/tests/wpt/metadata/2dcontext/building-paths/canvas_complexshapes_beziercurveto_001.htm.ini b/tests/wpt/metadata/2dcontext/building-paths/canvas_complexshapes_beziercurveto_001.htm.ini deleted file mode 100644 index b65812a6287..00000000000 --- a/tests/wpt/metadata/2dcontext/building-paths/canvas_complexshapes_beziercurveto_001.htm.ini +++ /dev/null @@ -1,2 +0,0 @@ -[canvas_complexshapes_beziercurveto_001.htm] - expected: FAIL diff --git a/tests/wpt/metadata/2dcontext/path-objects/2d.path.bezierCurveTo.ensuresubpath.2.html.ini b/tests/wpt/metadata/2dcontext/path-objects/2d.path.bezierCurveTo.ensuresubpath.2.html.ini deleted file mode 100644 index c9aff42a65e..00000000000 --- a/tests/wpt/metadata/2dcontext/path-objects/2d.path.bezierCurveTo.ensuresubpath.2.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[2d.path.bezierCurveTo.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.bezierCurveTo.ensuresubpath.2.html.ini b/tests/wpt/metadata/offscreen-canvas/path-objects/2d.path.bezierCurveTo.ensuresubpath.2.html.ini deleted file mode 100644 index c9aff42a65e..00000000000 --- a/tests/wpt/metadata/offscreen-canvas/path-objects/2d.path.bezierCurveTo.ensuresubpath.2.html.ini +++ /dev/null @@ -1,4 +0,0 @@ -[2d.path.bezierCurveTo.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.bezierCurveTo.ensuresubpath.2.worker.js.ini b/tests/wpt/metadata/offscreen-canvas/path-objects/2d.path.bezierCurveTo.ensuresubpath.2.worker.js.ini deleted file mode 100644 index 9ac56783648..00000000000 --- a/tests/wpt/metadata/offscreen-canvas/path-objects/2d.path.bezierCurveTo.ensuresubpath.2.worker.js.ini +++ /dev/null @@ -1,4 +0,0 @@ -[2d.path.bezierCurveTo.ensuresubpath.2.worker.html] - [If there is no subpath, the first control point is added] - expected: FAIL -