diff options
author | Michael Stahl <mstahl@redhat.com> | 2015-05-20 12:13:07 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2015-11-04 15:32:29 +0100 |
commit | 19fbe55eb4c149872d4183f0b2c489ff87a90f4c (patch) | |
tree | 9d22c10dc480456d6fd3ed3d3069c4c71477b381 /xmloff | |
parent | 666337ce629737a73791e6fa4f0a7ac98541dc1f (diff) |
ccu#1255 tdf#95569 xmloff: convert legacy assertions in ...
... PageMasterExportPropMapper
Make the properties optional, like XMLTextExportPropertySetMapper
already does.
(cherry picked from commit 18a712d2b3fe03629e00868ce17226994b7b7252)
Change-Id: Iee5d8ac113360937d8f3a3b867a6e6c7a18bbfa4
Signed-off-by: Miklos Vajna <vmiklos@collabora.co.uk>
Diffstat (limited to 'xmloff')
-rw-r--r-- | xmloff/source/style/PageMasterExportPropMapper.cxx | 34 |
1 files changed, 16 insertions, 18 deletions
diff --git a/xmloff/source/style/PageMasterExportPropMapper.cxx b/xmloff/source/style/PageMasterExportPropMapper.cxx index 689fd5e76c50..fa9375738ff5 100644 --- a/xmloff/source/style/PageMasterExportPropMapper.cxx +++ b/xmloff/source/style/PageMasterExportPropMapper.cxx @@ -22,7 +22,6 @@ #include <comphelper/types.hxx> #include <com/sun/star/table/BorderLine2.hpp> #include <xmloff/PageMasterStyleMap.hxx> -#include <tools/debug.hxx> #include <rtl/ustrbuf.hxx> #include <comphelper/extract.hxx> @@ -243,9 +242,10 @@ void XMLPageMasterExportPropMapper::handleElementItem( case CTF_PM_HEADERGRAPHICURL: case CTF_PM_FOOTERGRAPHICURL: { - DBG_ASSERT( pProperties && (nIdx >= 2), "property vector missing" ); - sal_Int32 nPos; - sal_Int32 nFilter; + assert(pProperties); + assert(nIdx >= 2 && "horrible array ordering borked again"); + sal_Int32 nPos(-1); + sal_Int32 nFilter(-1); switch( nContextId ) { case CTF_PM_GRAPHICURL: @@ -261,24 +261,22 @@ void XMLPageMasterExportPropMapper::handleElementItem( nFilter = CTF_PM_FOOTERGRAPHICFILTER; break; default: - nPos = 0; // TODO What values should this be? - nFilter = 0; + assert(false); } const Any* pPos = NULL; const Any* pFilter = NULL; - if( pProperties && (nIdx >= 2) ) + sal_uInt32 nIndex(nIdx - 1); + const XMLPropertyState& rFilter = (*pProperties)[nIndex]; + if (getPropertySetMapper()->GetEntryContextId(rFilter.mnIndex) == nFilter) { - const XMLPropertyState& rPos = (*pProperties)[nIdx - 2]; - DBG_ASSERT( getPropertySetMapper()->GetEntryContextId( rPos.mnIndex ) == nPos, - "invalid property map: pos expected" ); - if( getPropertySetMapper()->GetEntryContextId( rPos.mnIndex ) == nPos ) - pPos = &rPos.maValue; - - const XMLPropertyState& rFilter = (*pProperties)[nIdx - 1]; - DBG_ASSERT( getPropertySetMapper()->GetEntryContextId( rFilter.mnIndex ) == nFilter, - "invalid property map: filter expected" ); - if( getPropertySetMapper()->GetEntryContextId( rFilter.mnIndex ) == nFilter ) - pFilter = &rFilter.maValue; + pFilter = &rFilter.maValue; + --nIndex; + } + const XMLPropertyState& rPos = (*pProperties)[nIndex]; + if (getPropertySetMapper()->GetEntryContextId(rPos.mnIndex) == nPos) + { + pPos = &rPos.maValue; + --nIndex; } sal_uInt32 nPropIndex = rProperty.mnIndex; pThis->aBackgroundImageExport.exportXML( rProperty.maValue, pPos, pFilter, NULL, |