From 61fc1f1b5e55d54f385a11e3dadf741b30fb47b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Lys=C3=BD?= Date: Thu, 10 Jun 2021 11:04:20 +0200 Subject: [PATCH] Fix removing redundant filters [MAILPOET-3469] --- lib/Segments/SegmentsRepository.php | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/Segments/SegmentsRepository.php b/lib/Segments/SegmentsRepository.php index e60c510cb4..fdcb97d67e 100644 --- a/lib/Segments/SegmentsRepository.php +++ b/lib/Segments/SegmentsRepository.php @@ -108,9 +108,11 @@ class SegmentsRepository extends Repository { $this->persist($segment); } + // We want to remove redundant filters before update while ($segment->getDynamicFilters()->count() > count($filtersData)) { - $segment->getDynamicFilters()->removeElement($segment->getDynamicFilters()->last()); - $this->entityManager->remove($segment->getDynamicFilters()->last()); + $filterEntity = $segment->getDynamicFilters()->last(); + $segment->getDynamicFilters()->removeElement($filterEntity); + $this->entityManager->remove($filterEntity); } foreach ($filtersData as $key => $filterData) { if ($filterData instanceof DynamicSegmentFilterData) {