cppuhelper/source/typemanager.cxx | 4 - cui/source/options/optgdlg.cxx | 7 ++ extras/source/templates/layout/LushGreen.otp |binary filter/source/flash/swffilter.cxx | 10 ++- fpicker/source/office/PlacesListBox.cxx | 4 - sd/source/ui/inc/slideshow.hxx | 5 + sd/source/ui/slideshow/slideshowimpl.cxx | 6 +- sd/source/ui/slideshow/slideshowimpl.hxx | 2 sd/source/ui/slidesorter/controller/SlsSlotManager.cxx | 29 ---------- sd/source/ui/view/drviewse.cxx | 40 +++++++++----- sd/source/ui/view/outlnvs2.cxx | 30 ---------- sw/qa/extras/ooxmlexport/data/fdo70812.docx |binary sw/qa/extras/ooxmlexport/ooxmlexport.cxx | 8 ++ sw/source/core/edit/edtox.cxx | 3 - unotools/source/config/securityoptions.cxx | 2 vcl/qa/cppunit/graphicfilter/data/emf/fail/fdo71307-2.emf |binary vcl/source/filter/wmf/enhwmf.cxx | 5 + writerfilter/source/dmapper/DomainMapper.cxx | 9 ++- 18 files changed, 76 insertions(+), 88 deletions(-)
New commits: commit 42e77abe82f0e293da93e9ee1b707cf77b2c9153 Author: Andras Timar <[email protected]> Date: Tue Nov 12 20:55:23 2013 +0100 fdo#46410 fix FindRange Change-Id: I7aada76bc2e8e767f36016eee5e57267b3718b13 Reviewed-on: https://gerrit.libreoffice.org/6657 Reviewed-by: Miklos Vajna <[email protected]> Tested-by: Miklos Vajna <[email protected]> diff --git a/sw/source/core/edit/edtox.cxx b/sw/source/core/edit/edtox.cxx index d4f8781..9cc5502 100644 --- a/sw/source/core/edit/edtox.cxx +++ b/sw/source/core/edit/edtox.cxx @@ -419,8 +419,7 @@ void SwEditShell::ApplyAutoMark() // todo/mba: assuming that notes shouldn't be searched sal_Bool bSearchInNotes = sal_False; sal_uLong nRet = Find( aSearchOpt, bSearchInNotes, DOCPOS_START, DOCPOS_END, bCancel, - (FindRanges)(FND_IN_SELALL|FND_IN_BODYONLY|FND_IN_OTHER), - sal_False ); + (FindRanges)(FND_IN_SELALL), sal_False ); if(nRet) { commit bce409d06c0061caacc99f0033e752e4ebf39217 Author: Caolán McNamara <[email protected]> Date: Tue Nov 12 14:56:43 2013 +0000 Resolves: fdo#71307 out polygons are limited to 16bit point count Change-Id: I4dbe9145466d6d93ebd3dea7f4fe434c9ee3de19 (cherry picked from commit cdd351b1487a8a97f481a9165d9cd361aaee2ca4) Reviewed-on: https://gerrit.libreoffice.org/6655 Reviewed-by: David Tardon <[email protected]> Tested-by: David Tardon <[email protected]> diff --git a/vcl/qa/cppunit/graphicfilter/data/emf/fail/fdo71307-2.emf b/vcl/qa/cppunit/graphicfilter/data/emf/fail/fdo71307-2.emf new file mode 100644 index 0000000..b89db21 Binary files /dev/null and b/vcl/qa/cppunit/graphicfilter/data/emf/fail/fdo71307-2.emf differ diff --git a/vcl/source/filter/wmf/enhwmf.cxx b/vcl/source/filter/wmf/enhwmf.cxx index ad2a3a6..de8b780 100644 --- a/vcl/source/filter/wmf/enhwmf.cxx +++ b/vcl/source/filter/wmf/enhwmf.cxx @@ -344,6 +344,11 @@ void EnhWMFReader::ReadAndDrawPolygon(Drawer drawer, const sal_Bool skipFirst) template <class T> Polygon EnhWMFReader::ReadPolygon(sal_uInt32 nStartIndex, sal_uInt32 nPoints) { + bool bRecordOk = nPoints <= SAL_MAX_UINT16; + SAL_WARN_IF(!bRecordOk, "svtools.filter", "polygon record has more polygons than we can handle"); + if (!bRecordOk) + return Polygon(); + Polygon aPolygon(nPoints); for (sal_uInt16 i = nStartIndex ; i < nPoints && pWMF->good(); i++ ) { commit 5974f69b72d6c872b79c4f3b43562cd7aa04c3e3 Author: Caolán McNamara <[email protected]> Date: Tue Oct 22 12:20:16 2013 +0100 Resolves: fdo#69975 honour custom show settings if a custom show is set, then don't override it with current/first page, just accept it Change-Id: Icd04711028b3e11a576df6cd325ddb0db8974111 (cherry picked from commit 438f5cf4229dafe2100e36d818b05535091054d7) merge all three ShowSlideShow impls together Change-Id: If82f6313b258a79d59fbe34ab7846db5f9f45f76 (cherry picked from commit 368e94ce33bb4de1d2c0348082a349331a17f332) bStartWithActualSlide is always false (cherry picked from commit a1b0b68c0f1fe2467cddf021e09123085d043de2) Conflicts: sd/source/ui/slideshow/slideshowimpl.cxx sd/source/ui/slideshow/slideshowimpl.hxx Change-Id: Icf61858730e2576439fdc7bdd1c8a911f2b34bd7 Reviewed-on: https://gerrit.libreoffice.org/6374 Reviewed-by: David Tardon <[email protected]> Tested-by: David Tardon <[email protected]> diff --git a/sd/source/ui/inc/slideshow.hxx b/sd/source/ui/inc/slideshow.hxx index a309c82..be44a51 100644 --- a/sd/source/ui/inc/slideshow.hxx +++ b/sd/source/ui/inc/slideshow.hxx @@ -214,6 +214,11 @@ private: sal_Int32 mnInPlaceConfigEvent; }; +namespace slideshowhelp +{ + void ShowSlideShow(SfxRequest& rReq, SdDrawDocument &rDoc); +} + } #endif /* _SD_SLIDESHOW_HXX */ diff --git a/sd/source/ui/slideshow/slideshowimpl.cxx b/sd/source/ui/slideshow/slideshowimpl.cxx index b096dc4..6fbd862 100644 --- a/sd/source/ui/slideshow/slideshowimpl.cxx +++ b/sd/source/ui/slideshow/slideshowimpl.cxx @@ -974,7 +974,7 @@ bool SlideshowImpl::startShow( PresentationSettingsEx* pPresSettings ) } // build page list - createSlideList( maPresSettings.mbAll, false, aPresSlide ); + createSlideList( maPresSettings.mbAll, aPresSlide ); // remember Slide number from where the show was started if( pStartPage ) @@ -2449,7 +2449,7 @@ Reference< XSlideShow > SlideshowImpl::createSlideShow() const // --------------------------------------------------------- -void SlideshowImpl::createSlideList( bool bAll, bool bStartWithActualSlide, const String& rPresSlide ) +void SlideshowImpl::createSlideList( bool bAll, const String& rPresSlide ) { const long nSlideCount = mpDoc->GetSdPageCount( PK_STANDARD ); @@ -2457,7 +2457,7 @@ void SlideshowImpl::createSlideList( bool bAll, bool bStartWithActualSlide, cons { SdCustomShow* pCustomShow; - if( !bStartWithActualSlide && mpDoc->GetCustomShowList() && maPresSettings.mbCustomShow ) + if( mpDoc->GetCustomShowList() && maPresSettings.mbCustomShow ) pCustomShow = mpDoc->GetCustomShowList()->GetCurObject(); else pCustomShow = NULL; diff --git a/sd/source/ui/slideshow/slideshowimpl.hxx b/sd/source/ui/slideshow/slideshowimpl.hxx index 8be006b..89db0b2 100644 --- a/sd/source/ui/slideshow/slideshowimpl.hxx +++ b/sd/source/ui/slideshow/slideshowimpl.hxx @@ -265,7 +265,7 @@ private: double update(); - void createSlideList( bool bAll, bool bStartWithActualSlide, const String& rPresSlide ); + void createSlideList( bool bAll, const String& rPresSlide ); void displayCurrentSlide (const bool bSkipAllMainSequenceEffects = false); diff --git a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx index 6b9c690..ecb7761 100644 --- a/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx +++ b/sd/source/ui/slidesorter/controller/SlsSlotManager.cxx @@ -883,34 +883,7 @@ void SlotManager::GetStatusBarState (SfxItemSet& rSet) void SlotManager::ShowSlideShow( SfxRequest& rReq) { - Reference< XPresentation2 > xPresentation( mrSlideSorter.GetModel().GetDocument()->getPresentation() ); - if( xPresentation.is() ) - { - if( ( SID_REHEARSE_TIMINGS != rReq.GetSlot() ) ) - { - if( (SID_PRESENTATION == rReq.GetSlot() ) ) - { - Sequence< PropertyValue > aArguments(1); - PropertyValue aPage; - OUString sValue("0"); - - aPage.Name = "FirstPage"; - aPage.Value <<= sValue; - - aArguments[0] = aPage; - - xPresentation->startWithArguments( aArguments ); - } - else - { - xPresentation->start(); - } - } - else - { - xPresentation->rehearseTimings(); - } - } + slideshowhelp::ShowSlideShow(rReq, *mrSlideSorter.GetModel().GetDocument()); } void SlotManager::RenameSlide (void) diff --git a/sd/source/ui/view/drviewse.cxx b/sd/source/ui/view/drviewse.cxx index 36d8f78..408a090 100644 --- a/sd/source/ui/view/drviewse.cxx +++ b/sd/source/ui/view/drviewse.cxx @@ -1646,15 +1646,32 @@ void DrawViewShell::ShowUIControls (bool bVisible) maTabControl.Show (bVisible); } -void DrawViewShell::ShowSlideShow(SfxRequest& rReq) +namespace slideshowhelp { - Reference< XPresentation2 > xPresentation( GetDoc()->getPresentation() ); - if( xPresentation.is() ) + void ShowSlideShow(SfxRequest& rReq, SdDrawDocument &rDoc) { - if( ( SID_REHEARSE_TIMINGS != rReq.GetSlot() ) ) + Reference< XPresentation2 > xPresentation( rDoc.getPresentation() ); + if( xPresentation.is() ) { - if( (SID_PRESENTATION == rReq.GetSlot() ) ) + if (SID_REHEARSE_TIMINGS == rReq.GetSlot()) + xPresentation->rehearseTimings(); + else if (rDoc.getPresentationSettings().mbCustomShow) + { + //fdo#69975 if a custom show has been set, then + //use it whether or not we've been asked to + //start from the current or first slide + xPresentation->start(); + } + else if (SID_PRESENTATION_CURRENT_SLIDE == rReq.GetSlot()) { + //If there is no custom show set, start will automatically + //start at the current page + xPresentation->start(); + } + else + { + //Start at page 0, this would blow away any custom + //show settings if any were set Sequence< PropertyValue > aArguments(1); PropertyValue aPage; OUString sValue("0"); @@ -1666,18 +1683,15 @@ void DrawViewShell::ShowSlideShow(SfxRequest& rReq) xPresentation->startWithArguments( aArguments ); } - else - { - xPresentation->start(); - } - } - else - { - xPresentation->rehearseTimings(); } } } +void DrawViewShell::ShowSlideShow(SfxRequest& rReq) +{ + slideshowhelp::ShowSlideShow(rReq, *GetDoc()); +} + void DrawViewShell::StopSlideShow (bool /*bCloseFrame*/) { Reference< XPresentation2 > xPresentation( GetDoc()->getPresentation() ); diff --git a/sd/source/ui/view/outlnvs2.cxx b/sd/source/ui/view/outlnvs2.cxx index 87086ac..c3aa7d7 100644 --- a/sd/source/ui/view/outlnvs2.cxx +++ b/sd/source/ui/view/outlnvs2.cxx @@ -63,6 +63,7 @@ #include "sdabstdlg.hxx" #include "framework/FrameworkHelper.hxx" #include "DrawViewShell.hxx" +#include "slideshow.hxx" #include <boost/scoped_ptr.hpp> using namespace ::com::sun::star::uno; @@ -334,34 +335,7 @@ void OutlineViewShell::FuTemporary(SfxRequest &rReq) void OutlineViewShell::ShowSlideShow(SfxRequest& rReq) { - Reference< XPresentation2 > xPresentation( GetDoc()->getPresentation() ); - if( xPresentation.is() ) - { - if( ( SID_REHEARSE_TIMINGS != rReq.GetSlot() ) ) - { - if( (SID_PRESENTATION == rReq.GetSlot() ) ) - { - Sequence< PropertyValue > aArguments(1); - PropertyValue aPage; - OUString sValue("0"); - - aPage.Name = "FirstPage"; - aPage.Value <<= sValue; - - aArguments[0] = aPage; - - xPresentation->startWithArguments( aArguments ); - } - else - { - xPresentation->start(); - } - } - else - { - xPresentation->rehearseTimings(); - } - } + slideshowhelp::ShowSlideShow(rReq, *GetDoc()); } void OutlineViewShell::FuTemporaryModify(SfxRequest &rReq) commit de9f4fc5ca9370391e6c94c407c992ec138b8c29 Author: Andras Timar <[email protected]> Date: Wed Nov 13 10:23:59 2013 +0100 fdo#59256 hide this option when experimental features are disabled GTK print dialog is experimental, the checkbox has no effect, if experimental features are disabled. On Mac OS X LibreOffice cannot use native print dialog at all. Change-Id: I7497f1da0ec74b9067675e34eb4314b7a4616f06 Reviewed-on: https://gerrit.libreoffice.org/6664 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx index 1ae32e1..fbb1cf7 100644 --- a/cui/source/options/optgdlg.cxx +++ b/cui/source/options/optgdlg.cxx @@ -187,8 +187,13 @@ OfaMiscTabPage::OfaMiscTabPage(Window* pParent, const SfxItemSet& rSet) get(m_pExtHelpCB, "exthelp"); if (!lcl_HasSystemFilePicker()) get<VclContainer>("filedlgframe")->Hide(); -#if !defined(MACOSX) && ! ENABLE_GTK +#if ! ENABLE_GTK get<VclContainer>("printdlgframe")->Hide(); +#else + if (!SvtMiscOptions().IsExperimentalMode()) + { + get<VclContainer>("printdlgframe")->Hide(); + } #endif get(m_pFileDlgCB, "filedlg"); get(m_pPrintDlgCB, "printdlg"); commit c555fe6978a1a4300d13da7661f5b4f7c67efeb7 Author: Andras Timar <[email protected]> Date: Wed Nov 13 11:26:47 2013 +0100 fdo#69046 fix discolored thumbnail and background image of LushGreen template Change-Id: I71307b9f5d973b8282b793df1d71816fe002b541 Reviewed-on: https://gerrit.libreoffice.org/6667 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/extras/source/templates/layout/LushGreen.otp b/extras/source/templates/layout/LushGreen.otp index 991bad9..936ae04 100644 Binary files a/extras/source/templates/layout/LushGreen.otp and b/extras/source/templates/layout/LushGreen.otp differ commit 27a9a76d0a54d5cdd4737363b4b64452cb14615d Author: Andras Timar <[email protected]> Date: Wed Nov 13 12:58:09 2013 +0100 fdo#59542 smaller +/- buttons will not be truncated at the bottom Change-Id: If937d72e5b10bfbf055cf5b9909d50bbf5ddac81 Reviewed-on: https://gerrit.libreoffice.org/6668 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/fpicker/source/office/PlacesListBox.cxx b/fpicker/source/office/PlacesListBox.cxx index 99bb9e1..c3b3818 100644 --- a/fpicker/source/office/PlacesListBox.cxx +++ b/fpicker/source/office/PlacesListBox.cxx @@ -71,12 +71,12 @@ PlacesListBox::PlacesListBox( SvtFileDialog* pFileDlg, const OUString& rTitle, c mpAddBtn = new ImageButton( this, 0 ); mpAddBtn->SetText( OUString( "+" ) ); - mpAddBtn->SetPosSizePixel( Point( 0, 0 ), Size( 24, 24 ) ); + mpAddBtn->SetPosSizePixel( Point( 0, 0 ), Size( 22, 22 ) ); mpAddBtn->Show(); mpDelBtn = new ImageButton( this, 0 ); mpDelBtn->SetText( OUString( "-" ) ); - mpDelBtn->SetPosSizePixel( Point( 0, 0 ), Size( 24, 24 ) ); + mpDelBtn->SetPosSizePixel( Point( 0, 0 ), Size( 22, 22 ) ); mpDelBtn->Show(); } commit 6c1ce2b33ba2c279542fe54b453bebbf287faf20 Author: Laurent Balland-Poirier <[email protected]> Date: Wed Nov 6 17:57:09 2013 +0100 Resolves: fdo#71309 Export SWF with Multiple files crashes In case of unamed file, creation of sPresentationName crash. This patch forces creation of empty name Change-Id: I1b5319eb945f1959f2ad3c703365539508521861 Reviewed-on: https://gerrit.libreoffice.org/6598 Tested-by: Caolán McNamara <[email protected]> Reviewed-by: Caolán McNamara <[email protected]> (cherry picked from commit 2cf96ae334491733a2bdbeb003da6e49df19cc9f) diff --git a/filter/source/flash/swffilter.cxx b/filter/source/flash/swffilter.cxx index e08667e..4d0ace8 100644 --- a/filter/source/flash/swffilter.cxx +++ b/filter/source/flash/swffilter.cxx @@ -285,16 +285,20 @@ sal_Bool FlashExportFilter::ExportAsMultipleFiles(const Sequence< PropertyValue // AS: sPath is the parent directory, where everything else exists (like the sxi, // the -swf-files folder, the -audio files, etc. - int lastslash = sOriginalPath.lastIndexOf('/'); + sal_Int32 lastslash = sOriginalPath.lastIndexOf('/'); OUString sPath( sOriginalPath.copy(0, lastslash) ); OUString sPresentation(xStorable->getLocation()); lastslash = sPresentation.lastIndexOf('/') + 1; - int lastdot = sPresentation.lastIndexOf('.'); + sal_Int32 lastdot = sPresentation.lastIndexOf('.'); // AS: The name of the presentation, without 3 character extension. - OUString sPresentationName = sPresentation.copy(lastslash, lastdot - lastslash); + OUString sPresentationName; + if (lastdot < 0) // fdo#71309 in case file has no name + sPresentationName = sPresentation.copy(lastslash); + else + sPresentationName = sPresentation.copy(lastslash, lastdot - lastslash); OUString fullpath, swfdirpath, backgroundfilename, objectsfilename; commit 9726003f77361bd5b14d05018d287d408d857b26 Author: Stephan Bergmann <[email protected]> Date: Mon Nov 11 13:18:49 2013 +0100 Don't call Manager::addProvider(null) upon optional NoSuchFileException Change-Id: I62e953c886886158f227362fef7048459192217b (cherry picked from commit 49fa300703643a2e49df01944f1b1299138010c7) Reviewed-on: https://gerrit.libreoffice.org/6637 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/cppuhelper/source/typemanager.cxx b/cppuhelper/source/typemanager.cxx index 672e377..08c6fb9 100644 --- a/cppuhelper/source/typemanager.cxx +++ b/cppuhelper/source/typemanager.cxx @@ -2141,9 +2141,8 @@ void cppuhelper::TypeManager::readRdbDirectory( void cppuhelper::TypeManager::readRdbFile( rtl::OUString const & uri, bool optional) { - rtl::Reference< unoidl::Provider > prov; try { - prov = unoidl::loadProvider(manager_, uri); + manager_->addProvider(unoidl::loadProvider(manager_, uri)); } catch (unoidl::NoSuchFileException &) { if (!optional) { throw css::uno::DeploymentException( @@ -2157,7 +2156,6 @@ void cppuhelper::TypeManager::readRdbFile( + e.getDetail()), static_cast< cppu::OWeakObject * >(this)); } - manager_->addProvider(prov); } css::uno::Any cppuhelper::TypeManager::getSequenceType( commit 70de64599515cecd87a2bd8df55957c7e8c6cf9e Author: Stephan Bergmann <[email protected]> Date: Mon Nov 11 10:31:33 2013 +0100 Fix CompareIgnoreCaseToAscii -> matchIgnoreAsciiCaseAsciiL regression ...introduced with 19ebc215d19ed9c7c5c6fdabf2f4acd5af02cbc4 "INTEGRATION: CWS ineturl1: #i34006# modify INetURLObject to use rtl::OUString and rtl::OUStringBuffer," where String::CompareIgnoreCaseToAscii returns StringCompare but rtl::OUString::matchIgnoreAsciiCaseAsciiL return sal_Bool. Change-Id: I009bd6f606850f4e971fda4a1b468e7b0d102685 Reviewed-on: https://gerrit.libreoffice.org/6635 Reviewed-by: Caolán McNamara <[email protected]> Tested-by: Caolán McNamara <[email protected]> diff --git a/unotools/source/config/securityoptions.cxx b/unotools/source/config/securityoptions.cxx index cd0e6c7..153004f 100644 --- a/unotools/source/config/securityoptions.cxx +++ b/unotools/source/config/securityoptions.cxx @@ -880,7 +880,7 @@ sal_Bool SvtSecurityOptions_Impl::IsSecureURL( const OUString& sURL , // All other URLs must checked in combination with referer and internal information about security if ( (aProtocol != INET_PROT_MACRO && aProtocol != INET_PROT_SLOT) || - aURL.GetMainURL( INetURLObject::NO_DECODE ).matchIgnoreAsciiCaseAsciiL( "macro:///", 9 ) == 0) + aURL.GetMainURL( INetURLObject::NO_DECODE ).matchIgnoreAsciiCaseAsciiL( "macro:///", 9 ) ) { // security check only for "macro" ( without app basic ) or "slot" protocols bState = sal_True; commit 802caf4030f893cf4f8a7dda29236a1491800f6a Author: Miklos Vajna <[email protected]> Date: Thu Nov 7 16:01:25 2013 +0100 fdo#70812 writerfilter: check for nullptr after dynamic_cast Happens when we set "no number" in the default para style, which is already the case for Writer anyway. (cherry picked from commit 660d761bfeea81c0b76cf08b4c961a2ad8d09a06) Conflicts: sw/qa/extras/ooxmlexport/ooxmlexport.cxx Change-Id: I3b262e633e52e4aae039c55d6edb744e36f0f354 Reviewed-on: https://gerrit.libreoffice.org/6636 Reviewed-by: Jan Holesovsky <[email protected]> Tested-by: Jan Holesovsky <[email protected]> diff --git a/sw/qa/extras/ooxmlexport/data/fdo70812.docx b/sw/qa/extras/ooxmlexport/data/fdo70812.docx new file mode 100644 index 0000000..b9b5d52 Binary files /dev/null and b/sw/qa/extras/ooxmlexport/data/fdo70812.docx differ diff --git a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx index 7983360..c1bb45e 100644 --- a/sw/qa/extras/ooxmlexport/ooxmlexport.cxx +++ b/sw/qa/extras/ooxmlexport/ooxmlexport.cxx @@ -76,6 +76,7 @@ public: void testFdo60990(); void testBnc834035(); void testCp1000015(); + void testFdo70812(); CPPUNIT_TEST_SUITE(Test); #if !defined(MACOSX) && !defined(WNT) @@ -136,6 +137,7 @@ void Test::run() {"fdo60990.odt", &Test::testFdo60990}, {"bnc834035.odt", &Test::testBnc834035}, {"cp1000015.odt", &Test::testCp1000015}, + {"fdo70812.docx", &Test::testFdo70812}, }; // Don't test the first import of these, for some reason those tests fail const char* aBlacklist[] = { @@ -781,6 +783,12 @@ void Test::testCp1000015() getParagraph(2, "http://www.google.com/"); } +void Test::testFdo70812() +{ + // Import just crashed. + getParagraph(1, "Sample pages document."); +} + CPPUNIT_TEST_SUITE_REGISTRATION(Test); CPPUNIT_PLUGIN_IMPLEMENT(); diff --git a/writerfilter/source/dmapper/DomainMapper.cxx b/writerfilter/source/dmapper/DomainMapper.cxx index 46ceef3..33c1ad1 100644 --- a/writerfilter/source/dmapper/DomainMapper.cxx +++ b/writerfilter/source/dmapper/DomainMapper.cxx @@ -1564,7 +1564,8 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, PropertyMapPtr rContext, SprmType { //style sheets cannot have a numbering rule attached StyleSheetPropertyMap* pStyleSheetPropertyMap = dynamic_cast< StyleSheetPropertyMap* >( rContext.get() ); - pStyleSheetPropertyMap->SetListLevel( (sal_Int16)nIntValue ); + if (pStyleSheetPropertyMap) + pStyleSheetPropertyMap->SetListLevel( (sal_Int16)nIntValue ); } else rContext->Insert( PROP_NUMBERING_LEVEL, true, uno::makeAny( (sal_Int16)nIntValue )); @@ -1578,7 +1579,8 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, PropertyMapPtr rContext, SprmType { //style sheets cannot have a numbering rule attached StyleSheetPropertyMap* pStyleSheetPropertyMap = dynamic_cast< StyleSheetPropertyMap* >( rContext.get() ); - pStyleSheetPropertyMap->SetListId( nIntValue ); + if (pStyleSheetPropertyMap) + pStyleSheetPropertyMap->SetListId( nIntValue ); } if( pList.get( ) ) { @@ -1596,7 +1598,8 @@ void DomainMapper::sprmWithProps( Sprm& rSprm, PropertyMapPtr rContext, SprmType { // set the number id for AbstractNum references StyleSheetPropertyMap* pStyleSheetPropertyMap = dynamic_cast< StyleSheetPropertyMap* >( rContext.get() ); - pStyleSheetPropertyMap->SetNumId( nIntValue ); + if (pStyleSheetPropertyMap) + pStyleSheetPropertyMap->SetNumId( nIntValue ); } else {
_______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
