Index: editeng/source/outliner/outliner.cxx =================================================================== --- editeng/source/outliner/outliner.cxx (revision 1381914) +++ editeng/source/outliner/outliner.cxx (working copy) @@ -1916,7 +1916,15 @@ // check if numbering is the same if( !isSameNumbering( *pFmt, *pParaFmt ) ) break; + if ( pFmt->GetStart() < pParaFmt->GetStart() ) + break; + if ( pFmt->GetStart() > pParaFmt->GetStart() ) + { + nNumber += pFmt->GetStart() - pParaFmt->GetStart(); + pParaFmt = pFmt; + } + const SfxBoolItem& rBulletState = (const SfxBoolItem&) pEditEngine->GetParaAttrib( nPara, EE_PARA_BULLETSTATE ); if( rBulletState.GetValue() ) Index: filter/source/msfilter/svdfppt.cxx =================================================================== --- filter/source/msfilter/svdfppt.cxx (revision 1384189) +++ filter/source/msfilter/svdfppt.cxx (working copy) @@ -2512,19 +2512,6 @@ if ( !nIsBullet2 ) aParagraphAttribs.Put( SfxBoolItem( EE_PARA_BULLETSTATE, sal_False ) ); - if ( oStartNumbering ) - { - if ( *oStartNumbering != nLastStartNumbering ) - rOutliner.SetNumberingStartValue( nParaIndex, *oStartNumbering ); - else - rOutliner.SetNumberingStartValue( nParaIndex, -1 ); - nLastStartNumbering = *oStartNumbering; - } - else - { - nLastStartNumbering = -1; - rOutliner.SetNumberingStartValue( nParaIndex, nLastStartNumbering ); - } pPreviousParagraph = pPara; if ( !aSelection.nStartPos ) // in PPT empty paragraphs never gets a bullet @@ -3910,6 +3897,11 @@ break; } rStartNumbering = boost::optional< sal_Int16 >( nAnmScheme >> 16 ); + sal_Int16 nBuStart = *rStartNumbering; + if ( ( nBuFlags & 0x02000000 ) && ( nBuStart != 1 )) + { + rNumberFormat.SetStart( static_cast(nBuStart) ); + } } return bHardAttribute; }