From d72f3d480eaffd8bd6d14fe60f01c995886cf317 Mon Sep 17 00:00:00 2001 From: Noel Grandin Date: Wed, 3 May 2023 10:47:43 +0200 Subject: tdf#137544 simplify SdrObjList destructor by allowing the maList to destruct naturally, it deletes the objects from first to last. This speeds up the search process when these objects remove themselves from broadcasters. Change-Id: I0534b39bc82b24d0e4245773e105a77bce735c9a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151315 Tested-by: Jenkins Reviewed-by: Noel Grandin --- svx/source/svdraw/svdpage.cxx | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) (limited to 'svx/source') diff --git a/svx/source/svdraw/svdpage.cxx b/svx/source/svdraw/svdpage.cxx index e685c40c89a5..351278cf789c 100644 --- a/svx/source/svdraw/svdpage.cxx +++ b/svx/source/svdraw/svdpage.cxx @@ -112,14 +112,9 @@ void SdrObjList::ClearSdrObjList() SdrObjList::~SdrObjList() { - // clear SdrObjects without broadcasting - while(!maList.empty()) - { - // remove last object from list - SdrObject& rObj = *maList.back(); - rObj.setParentOfSdrObject(nullptr); - maList.pop_back(); - } + // Clear SdrObjects without broadcasting. + for (auto& rxObj : maList) + rxObj->setParentOfSdrObject(nullptr); } SdrPage* SdrObjList::getSdrPageFromSdrObjList() const -- cgit