svx/source/svdraw/svdundo.cxx |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

New commits:
commit 709fc73b2c538f0c15d8c94ffeb5d8234a00a01d
Author:     Caolán McNamara <[email protected]>
AuthorDate: Thu Apr 4 12:22:06 2019 +0100
Commit:     Xisco Faulí <[email protected]>
CommitDate: Mon Apr 8 11:53:31 2019 +0200

    Resolves: tdf#120754 on undoing an obj insert use its current ordinal
    
    there may have been changes not caught by undo to the object's
    ordinal, so on use of RemoveObject (or ReplaceObject) call GetOrdNum
    on the object to get its current position within its parent.
    
    We can keep nOrdNum for the desired dest position within the parent
    for InsertObject
    
    Change-Id: I3bdabf387dd630fc1fadaaa1f3d8c05e93865e4f
    Reviewed-on: https://gerrit.libreoffice.org/70253
    Tested-by: Jenkins
    Reviewed-by: Xisco Faulí <[email protected]>

diff --git a/svx/source/svdraw/svdundo.cxx b/svx/source/svdraw/svdundo.cxx
index 107bd1a0ad05..3cd1fa98d393 100644
--- a/svx/source/svdraw/svdundo.cxx
+++ b/svx/source/svdraw/svdundo.cxx
@@ -708,7 +708,7 @@ void SdrUndoRemoveObj::Redo()
     {
         ImplUnmarkObject( pObj );
         E3DModifySceneSnapRectUpdater aUpdater(pObj);
-        pObjList->RemoveObject(nOrdNum);
+        pObjList->RemoveObject(pObj->GetOrdNum());
     }
 
     // Trigger PageChangeCall
@@ -730,7 +730,7 @@ void SdrUndoInsertObj::Undo()
     {
         ImplUnmarkObject( pObj );
 
-        SdrObject* pChkObj= pObjList->RemoveObject(nOrdNum);
+        SdrObject* pChkObj= pObjList->RemoveObject(pObj->GetOrdNum());
         DBG_ASSERT(pChkObj==pObj,"UndoInsertObj: RemoveObjNum!=pObj");
     }
 }
@@ -886,7 +886,7 @@ void SdrUndoReplaceObj::Undo()
         SetNewOwner(true);
 
         ImplUnmarkObject( pNewObj );
-        pObjList->ReplaceObject(pObj,nOrdNum);
+        pObjList->ReplaceObject(pObj,pNewObj->GetOrdNum());
     }
     else
     {
@@ -904,7 +904,7 @@ void SdrUndoReplaceObj::Redo()
         SetNewOwner(false);
 
         ImplUnmarkObject( pObj );
-        pObjList->ReplaceObject(pNewObj,nOrdNum);
+        pObjList->ReplaceObject(pNewObj,pObj->GetOrdNum());
 
     }
     else
_______________________________________________
Libreoffice-commits mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to