From de3b2541de380c04008cce7937076e10496cb78b Mon Sep 17 00:00:00 2001 From: Joni Poikelin Date: Tue, 4 Aug 2020 09:24:09 +0300 Subject: [PATCH] Clear old triangulated vertex data when a path is completely clipped Old data was held in buffers which caused OpenGL paint engine to re-render previous shape again with current settings if the current path was completely clipped. Pick-to: 5.15 Fixes: QTBUG-35513 Change-Id: I0cd448e0b18d199af11e82d79b1ab72d0f89c79e Reviewed-by: Eirik Aavitsland --- src/gui/painting/qtriangulatingstroker.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/painting/qtriangulatingstroker.cpp b/src/gui/painting/qtriangulatingstroker.cpp index 14acc1a480..9490e11dd9 100644 --- a/src/gui/painting/qtriangulatingstroker.cpp +++ b/src/gui/painting/qtriangulatingstroker.cpp @@ -84,6 +84,7 @@ void QTriangulatingStroker::process(const QVectorPath &path, const QPen &pen, co const qreal *pts = path.points(); const QPainterPath::ElementType *types = path.elements(); int count = path.elementCount(); + m_vertices.reset(); if (count < 2) return; @@ -100,7 +101,6 @@ void QTriangulatingStroker::process(const QVectorPath &path, const QPen &pen, co m_join_style = qpen_joinStyle(pen); m_cap_style = qpen_capStyle(pen); - m_vertices.reset(); m_miter_limit = pen.miterLimit() * qpen_widthf(pen); // The curvyness is based on the notion that I originally wanted