fdo#85215: Don't adjust references wrt cell position when disabled.
Change-Id: Ie1a12cc189bcb66fad59ea9901ac0dc95bb68788
(cherry picked from commit 10fc138307afb4b39baddb0d56eb8e986e5d29ea)
Reviewed-on: https://gerrit.libreoffice.org/12106
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
diff --git a/sc/source/core/data/table3.cxx b/sc/source/core/data/table3.cxx
index ce17bb9..05285d8 100644
--- a/sc/source/core/data/table3.cxx
+++ b/sc/source/core/data/table3.cxx
@@ -856,8 +856,11 @@ void ScTable::SortReorderByRow(
ScAddress aOldPos = rCell.maCell.mpFormula->aPos;
ScFormulaCell* pNew = rCell.maCell.mpFormula->Clone( aCellPos, SC_CLONECELL_DEFAULT);
pNew->CopyAllBroadcasters(*rCell.maCell.mpFormula);
pNew->GetCode()->AdjustReferenceOnMovedOrigin(aOldPos, aCellPos);
if (pArray->IsUpdateRefs())
{
pNew->CopyAllBroadcasters(*rCell.maCell.mpFormula);
pNew->GetCode()->AdjustReferenceOnMovedOrigin(aOldPos, aCellPos);
}
sc::CellStoreType::iterator itBlk = rCellStore.push_back(pNew);
}
diff --git a/sc/source/ui/undo/undosort.cxx b/sc/source/ui/undo/undosort.cxx
index 36156fe..4a00707 100644
--- a/sc/source/ui/undo/undosort.cxx
+++ b/sc/source/ui/undo/undosort.cxx
@@ -46,8 +46,7 @@ void UndoSort::Execute( bool bUndo )
ScUndoUtil::MarkSimpleBlock(pDocShell, maParam.maSortRange);
pDocShell->PostPaint(maParam.maSortRange, PAINT_GRID);
pDocShell->PostDataChanged();
rDoc.SetDirty(maParam.maSortRange);
if (!aParam.mbUpdateRefs)
rDoc.BroadcastCells(aParam.maSortRange, SC_HINT_DATACHANGED);
}