From 02eab5bc68c8feec2760aa74ef1bc9ddd601f9c3 Mon Sep 17 00:00:00 2001 From: kradchen Date: Wed, 23 Jul 2025 13:38:44 +0800 Subject: [PATCH] fix: fix a memory leak bug in renderReferenceLine function --- src/src/UI/Manager/ImageViewManager.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/src/UI/Manager/ImageViewManager.cpp b/src/src/UI/Manager/ImageViewManager.cpp index 766688a..c8747aa 100644 --- a/src/src/UI/Manager/ImageViewManager.cpp +++ b/src/src/UI/Manager/ImageViewManager.cpp @@ -327,7 +327,7 @@ void ImageViewManager::viewSyncPoint(DicomImageView *src, void * sliceData){ void ImageViewManager::renderReferenceLine() { - vtkPoints* pts = currentView->hasSeries() ? currentView->getSliceBoundPoints() : nullptr; + auto pts = currentView->hasSeries() ? currentView->getSliceBoundPoints() : nullptr; smartDo([](auto v, auto callData) { if (v->hasSeries()) { //disable global trigger slot @@ -338,6 +338,7 @@ void ImageViewManager::renderReferenceLine() { v->updateReferenceLine(nullptr); },currentView, pts, SameStudyOrthogonalSeries); currentView->updateReferenceLine(nullptr); + if (pts)pts->Delete(); } void ImageViewManager::viewPaned(DicomImageView *src, void* offsetVector) {