diff options
author | Caolán McNamara <caolanm@redhat.com> | 2016-09-30 13:43:07 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2016-09-30 14:42:01 +0100 |
commit | 43e241541eefd21cfc7a8e8f51ef958c2a7ba4d7 (patch) | |
tree | 16d0859e55c8cc05b1990a5801a45ac122915b01 /sd/source | |
parent | coverity#1371302 Missing move assignment operator (diff) | |
download | core-43e241541eefd21cfc7a8e8f51ef958c2a7ba4d7.tar.gz core-43e241541eefd21cfc7a8e8f51ef958c2a7ba4d7.zip |
Resolves: tdf#101004 crash on using slide master design from master view
started asserting since...
commit f7ed8b99b628625851fb28ec1a3dead710c8871c
Author: Caolán McNamara <caolanm@redhat.com>
Date: Tue Jun 23 16:54:52 2015 +0100
allow slide design to affect multiple standard pages
but looks broken well before that
Change-Id: I03988696e7a25e4f8c932f55bcd1879994ac1005
Diffstat (limited to 'sd/source')
-rw-r--r-- | sd/source/ui/func/fuprlout.cxx | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/sd/source/ui/func/fuprlout.cxx b/sd/source/ui/func/fuprlout.cxx index b480102ca97a..b10fb9882170 100644 --- a/sd/source/ui/func/fuprlout.cxx +++ b/sd/source/ui/func/fuprlout.cxx @@ -136,12 +136,6 @@ void FuPresentationLayout::DoExecute( SfxRequest& rReq ) } } - assert(!aSelectedPages.empty() && "no selected page"); - OUString aOldLayoutName(aSelectedPages.back()->GetLayoutName()); - sal_Int32 nPos = aOldLayoutName.indexOf(SD_LT_SEPARATOR); - if (nPos != -1) - aOldLayoutName = aOldLayoutName.copy(0, nPos); - bool bMasterPage = bOnMaster; bool bCheckMasters = false; @@ -154,7 +148,15 @@ void FuPresentationLayout::DoExecute( SfxRequest& rReq ) aSet.Put( SfxBoolItem( ATTR_PRESLAYOUT_LOAD, bLoad)); aSet.Put( SfxBoolItem( ATTR_PRESLAYOUT_MASTER_PAGE, bMasterPage ) ); aSet.Put( SfxBoolItem( ATTR_PRESLAYOUT_CHECK_MASTERS, bCheckMasters ) ); - aSet.Put( SfxStringItem( ATTR_PRESLAYOUT_NAME, aOldLayoutName)); + + if (!aSelectedPages.empty()) + { + OUString aOldLayoutName(aSelectedPages.back()->GetLayoutName()); + sal_Int32 nPos = aOldLayoutName.indexOf(SD_LT_SEPARATOR); + if (nPos != -1) + aOldLayoutName = aOldLayoutName.copy(0, nPos); + aSet.Put(SfxStringItem(ATTR_PRESLAYOUT_NAME, aOldLayoutName)); + } const SfxItemSet *pArgs = rReq.GetArgs (); @@ -237,7 +239,7 @@ void FuPresentationLayout::DoExecute( SfxRequest& rReq ) static_cast<DrawView*>(mpView)->BlockPageOrderChangedHint(false); // if the master page was visible, show it again - if (!bError) + if (!bError && !aSelectedPages.empty()) { if (bOnMaster) { |