summaryrefslogtreecommitdiffstats
path: root/src/printsupport
diff options
context:
space:
mode:
Diffstat (limited to 'src/printsupport')
-rw-r--r--src/printsupport/kernel/qpaintengine_alpha.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/printsupport/kernel/qpaintengine_alpha.cpp b/src/printsupport/kernel/qpaintengine_alpha.cpp
index ebb1b85e83..cdf5570979 100644
--- a/src/printsupport/kernel/qpaintengine_alpha.cpp
+++ b/src/printsupport/kernel/qpaintengine_alpha.cpp
@@ -359,7 +359,10 @@ void QAlphaPaintEngine::flushAndInit(bool init)
d->m_picpainter->setOpacity(painter()->opacity());
d->m_picpainter->setTransform(painter()->combinedTransform());
d->m_picengine->syncState();
- *d->m_picpainter->d_func()->state = *painter()->d_func()->state;
+ QPainterState &state = *d->m_picpainter->d_func()->state;
+ QPainter *oldPainter = state.painter;
+ state = *painter()->d_func()->state;
+ state.painter = oldPainter;
}
}