i#119400 repair broken undo
Change-Id: I36d74fe1555bd436f93a5fa595e7da05bbd37493
This commit is contained in:
@@ -635,11 +635,15 @@ bool SfxUndoManager::ImplAddUndoAction_NoNotify( SfxUndoAction *pAction, bool bT
|
|||||||
// merge, if required
|
// merge, if required
|
||||||
SfxUndoAction* pMergeWithAction = m_pData->pActUndoArray->nCurUndoAction ?
|
SfxUndoAction* pMergeWithAction = m_pData->pActUndoArray->nCurUndoAction ?
|
||||||
m_pData->pActUndoArray->aUndoActions[m_pData->pActUndoArray->nCurUndoAction-1].pAction : NULL;
|
m_pData->pActUndoArray->aUndoActions[m_pData->pActUndoArray->nCurUndoAction-1].pAction : NULL;
|
||||||
if ( bTryMerge && ( !pMergeWithAction || !pMergeWithAction->Merge( pAction ) ) )
|
if ( bTryMerge && pMergeWithAction )
|
||||||
|
{
|
||||||
|
bool bMerged = pMergeWithAction->Merge( pAction );
|
||||||
|
if ( bMerged )
|
||||||
{
|
{
|
||||||
i_guard.markForDeletion( pAction );
|
i_guard.markForDeletion( pAction );
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// clear redo stack, if requested
|
// clear redo stack, if requested
|
||||||
if ( bClearRedo && ( ImplGetRedoActionCount_Lock( CurrentLevel ) > 0 ) )
|
if ( bClearRedo && ( ImplGetRedoActionCount_Lock( CurrentLevel ) > 0 ) )
|
||||||
|
Reference in New Issue
Block a user