svx/source/svdraw/sdrhittesthelper.cxx | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
New commits: commit d40c6601330b70c3cb9c1be0fa9e9775ad51113c Author: Noel Grandin <noel.gran...@collabora.co.uk> AuthorDate: Tue Apr 19 12:53:43 2022 +0200 Commit: Noel Grandin <noel.gran...@collabora.co.uk> CommitDate: Tue Apr 19 15:15:24 2022 +0200 tdf#148313 Basic IDE crashing while resizing dialog Change-Id: Ic68b78f26626f346f3ef8b54a584de64165d9eb2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/133170 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.gran...@collabora.co.uk> diff --git a/svx/source/svdraw/sdrhittesthelper.cxx b/svx/source/svdraw/sdrhittesthelper.cxx index 7534b08d5b7a..62ebde956c73 100644 --- a/svx/source/svdraw/sdrhittesthelper.cxx +++ b/svx/source/svdraw/sdrhittesthelper.cxx @@ -136,9 +136,10 @@ bool ViewObjectContactPrimitiveHit( { // get primitive sequence sdr::contact::DisplayInfo aDisplayInfo; - const drawinglayer::primitive2d::Primitive2DContainer& rSequence(rVOC.getPrimitive2DSequence(aDisplayInfo)); + // have to make a copy of this container here, because it might be changed underneath us + const drawinglayer::primitive2d::Primitive2DContainer aSequence(rVOC.getPrimitive2DSequence(aDisplayInfo)); - if(!rSequence.empty()) + if(!aSequence.empty()) { // create a HitTest processor const drawinglayer::geometry::ViewInformation2D& rViewInformation2D = rVOC.GetObjectContact().getViewInformation2D(); @@ -152,7 +153,7 @@ bool ViewObjectContactPrimitiveHit( aHitTestProcessor2D.collectHitStack(pHitContainer != nullptr); // feed it with the primitives - aHitTestProcessor2D.process(rSequence); + aHitTestProcessor2D.process(aSequence); // deliver result if (aHitTestProcessor2D.getHit())