summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
authorEirik Aavitsland <eirik.aavitsland@qt.io>2019-06-19 16:35:28 +0200
committerEirik Aavitsland <eirik.aavitsland@qt.io>2019-06-19 16:47:19 +0200
commit2ce4a9f48705095669cb74c8de9d8a72f9d49b0e (patch)
treecdd6fd46f7f536b4d7d05aa4e34bfabf4793e3cc /src/gui
parent71ed62bc4c5bff26af1d822bfd89f5fbb87c4094 (diff)
Fix crash in QPainterPath::reserve()
Function did not handle default-constructed (null d_ptr) path correctly. Fixes: QTBUG-76516 Change-Id: I2925d4306f7fce34ece6739b18a8e275e7970837 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/painting/qpainterpath.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gui/painting/qpainterpath.cpp b/src/gui/painting/qpainterpath.cpp
index cbe34c2857..d20faf89a2 100644
--- a/src/gui/painting/qpainterpath.cpp
+++ b/src/gui/painting/qpainterpath.cpp
@@ -675,8 +675,9 @@ void QPainterPath::reserve(int size)
{
Q_D(QPainterPath);
if ((!d && size > 0) || (d && d->elements.capacity() < size)) {
+ ensureData();
detach();
- d->elements.reserve(size);
+ d_func()->elements.reserve(size);
}
}