summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2014-04-29 10:11:28 +0100
committerCaolán McNamara <caolanm@redhat.com>2014-04-29 10:16:37 +0100
commit3db00c554b38ee6c1b6e969768da53db4dc2f92a (patch)
tree950071e90eebb626a29754449f313279d470692f
parente34c437d2e98753159c9bd82516386143d707d93 (diff)
Resolves: fdo#62038 EPS not rendered in drawinglayer code paths
It attempts to see if the outputdevice can draw the true EPS but if the outputdevice is in record-only mode it just stashs a new eps metaaction, and this time with no fallback image, and happily returns ok so the drawing layer ends up with a new replacement eps metaction, except with no preview anymore. Perhaps DrawEPS should return false here, but its safer this way Change-Id: I0e0b16e4b2be00802a1af1f8147500d816a3c5de
-rw-r--r--drawinglayer/source/processor2d/vclprocessor2d.cxx6
1 files changed, 4 insertions, 2 deletions
diff --git a/drawinglayer/source/processor2d/vclprocessor2d.cxx b/drawinglayer/source/processor2d/vclprocessor2d.cxx
index b7c3bfe00ff8..d23e5b5a908a 100644
--- a/drawinglayer/source/processor2d/vclprocessor2d.cxx
+++ b/drawinglayer/source/processor2d/vclprocessor2d.cxx
@@ -1353,12 +1353,14 @@ namespace drawinglayer
if(!aRectangle.IsEmpty())
{
+ bool bWillReallyRender = mpOutputDevice->IsDeviceOutputNecessary();
// try to paint EPS directly without fallback visualisation
- const bool bEPSPaintedDirectly(mpOutputDevice->DrawEPS(
+ const bool bEPSPaintedDirectly = bWillReallyRender &&
+ mpOutputDevice->DrawEPS(
aRectangle.TopLeft(),
aRectangle.GetSize(),
rEpsPrimitive2D.getGfxLink(),
- 0));
+ 0);
if(!bEPSPaintedDirectly)
{