Kaydet (Commit) 1df0656c authored tarafından Michael Stahl's avatar Michael Stahl

fdo#83664: svx: don't try to paint on empty OutputDevice

ObjectContactOfPageView::DoProcessDisplay() initalizes an empty
aViewRange, which later code assumes to mean "paint everything", but
actually the OutputDevice has 0 size so nothing can be painted.

Change-Id: I1e47e8d38c1fad5e08027bb76fce4b54c5b3358b
üst 93de2f6b
...@@ -141,6 +141,15 @@ namespace sdr ...@@ -141,6 +141,15 @@ namespace sdr
// OutputDevices then the given ones. // OutputDevices then the given ones.
void ObjectContactOfPageView::DoProcessDisplay(DisplayInfo& rDisplayInfo) void ObjectContactOfPageView::DoProcessDisplay(DisplayInfo& rDisplayInfo)
{ {
OutputDevice& rTargetOutDev = GetPageWindow().GetPaintWindow().GetTargetOutputDevice();
const Size aOutputSizePixel(rTargetOutDev.GetOutputSizePixel());
if (!isOutputToRecordingMetaFile() // do those have outdev too?
&& (0 == aOutputSizePixel.getWidth() ||
0 == aOutputSizePixel.getHeight()))
{
return;
}
// visualize entered group when that feature is switched on and it's not // visualize entered group when that feature is switched on and it's not
// a print output. #i29129# No ghosted display for printing. // a print output. #i29129# No ghosted display for printing.
bool bVisualizeEnteredGroup(DoVisualizeEnteredGroup() && !isOutputToPrinter()); bool bVisualizeEnteredGroup(DoVisualizeEnteredGroup() && !isOutputToPrinter());
...@@ -170,7 +179,6 @@ namespace sdr ...@@ -170,7 +179,6 @@ namespace sdr
// update current ViewInformation2D at the ObjectContact // update current ViewInformation2D at the ObjectContact
const double fCurrentTime(getPrimitiveAnimator().GetTime()); const double fCurrentTime(getPrimitiveAnimator().GetTime());
OutputDevice& rTargetOutDev = GetPageWindow().GetPaintWindow().GetTargetOutputDevice();
basegfx::B2DRange aViewRange; basegfx::B2DRange aViewRange;
// create ViewRange // create ViewRange
...@@ -194,7 +202,6 @@ namespace sdr ...@@ -194,7 +202,6 @@ namespace sdr
else else
{ {
// use visible pixels, but transform to world coordinates // use visible pixels, but transform to world coordinates
const Size aOutputSizePixel(rTargetOutDev.GetOutputSizePixel());
aViewRange = basegfx::B2DRange(0.0, 0.0, aOutputSizePixel.getWidth(), aOutputSizePixel.getHeight()); aViewRange = basegfx::B2DRange(0.0, 0.0, aOutputSizePixel.getWidth(), aOutputSizePixel.getHeight());
// if a clip region is set, use it // if a clip region is set, use it
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment