summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Tardon <dtardon@redhat.com>2014-06-12 12:10:33 +0200
committerDavid Tardon <dtardon@redhat.com>2014-06-12 12:15:40 +0200
commitb9d6da2f3d135cc314bf14829b2a85ce0ca6319d (patch)
treed21db6e423d98a294b952dd6657ef59430f3eb35
parente3115814f4f82f0eeddb4d591d0e66e6a2fd9196 (diff)
fdo#79883 the page view object contact must exist
Change-Id: I5c6bd3ea267f1ea84b46e46aa508a27d00903347 (cherry picked from commit 551c915dcbf3e1d6bfd799c6e13e5700e2c3e535)
-rw-r--r--svx/source/sdr/contact/viewcontactofunocontrol.cxx9
1 files changed, 6 insertions, 3 deletions
diff --git a/svx/source/sdr/contact/viewcontactofunocontrol.cxx b/svx/source/sdr/contact/viewcontactofunocontrol.cxx
index edc551baaaff..617b05392eaa 100644
--- a/svx/source/sdr/contact/viewcontactofunocontrol.cxx
+++ b/svx/source/sdr/contact/viewcontactofunocontrol.cxx
@@ -101,10 +101,13 @@ namespace sdr { namespace contact {
{
// print or print preview requires special handling
const OutputDevice* pDevice = _rObjectContact.TryToGetOutputDevice();
- bool bPrintOrPreview = ( pDevice != NULL ) && ( pDevice->GetOutDevType() == OUTDEV_PRINTER );
+ ObjectContactOfPageView* const pPageViewContact = dynamic_cast< ObjectContactOfPageView* >( &_rObjectContact );
- ObjectContactOfPageView* pPageViewContact = dynamic_cast< ObjectContactOfPageView* >( &_rObjectContact );
- bPrintOrPreview |= ( pPageViewContact != NULL ) && pPageViewContact->GetPageWindow().GetPageView().GetView().IsPrintPreview();
+ const bool bPrintOrPreview = pPageViewContact
+ && ( ( ( pDevice != NULL ) && ( pDevice->GetOutDevType() == OUTDEV_PRINTER ) )
+ || pPageViewContact->GetPageWindow().GetPageView().GetView().IsPrintPreview()
+ )
+ ;
if ( bPrintOrPreview )
return *new UnoControlPrintOrPreviewContact( *pPageViewContact, *this );