Skip to content

Commit 7b53cc6

Browse files
committed
Close all subpaths right before filling them.
Closes rust-windowing#269.
1 parent c258616 commit 7b53cc6

File tree

2 files changed

+7
-0
lines changed

2 files changed

+7
-0
lines changed

content/src/outline.rs

+5
Original file line numberDiff line numberDiff line change
@@ -226,6 +226,11 @@ impl Outline {
226226
self.push_contour(ContourRectClipper::new(clip_rect, contour).clip());
227227
}
228228
}
229+
230+
#[inline]
231+
pub fn close_all_contours(&mut self) {
232+
self.contours.iter_mut().for_each(|contour| contour.close());
233+
}
229234
}
230235

231236
impl Debug for Outline {

renderer/src/scene.rs

+2
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,7 @@ impl Scene {
138138
outline = Outline::new();
139139
} else {
140140
outline = (*original_outline).clone();
141+
outline.close_all_contours();
141142
outline.clip_against_polygon(clip_polygon);
142143
outline.apply_perspective(perspective);
143144

@@ -147,6 +148,7 @@ impl Scene {
147148
_ => {
148149
// TODO(pcwalton): Short circuit.
149150
outline = (*original_outline).clone();
151+
outline.close_all_contours();
150152
if options.transform.is_2d() || options.subpixel_aa_enabled {
151153
let mut transform = match options.transform {
152154
PreparedRenderTransform::Transform2D(transform) => transform,

0 commit comments

Comments
 (0)