From c4e5310c95a8c3c49a416e3eca6683d6b71089b6 Mon Sep 17 00:00:00 2001 From: Matthias Koefferlein Date: Thu, 8 Apr 2021 00:32:03 +0200 Subject: [PATCH] Bugfix: holes and hulls are not neccessarily merged --- src/db/db/dbRegionUtils.h | 4 ++-- src/db/unit_tests/dbDeepRegionTests.cc | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/db/db/dbRegionUtils.h b/src/db/db/dbRegionUtils.h index f1da9196d..a7e67ce61 100644 --- a/src/db/db/dbRegionUtils.h +++ b/src/db/db/dbRegionUtils.h @@ -558,7 +558,7 @@ public: virtual void process (const db::Polygon &poly, std::vector &res) const; virtual const TransformationReducer *vars () const { return 0; } - virtual bool result_is_merged () const { return true; } // we believe so ... + virtual bool result_is_merged () const { return false; } // isn't merged for nested holes :( virtual bool requires_raw_input () const { return false; } virtual bool wants_variants () const { return true; } virtual bool result_must_not_be_merged () const { return false; } @@ -577,7 +577,7 @@ public: virtual void process (const db::Polygon &poly, std::vector &res) const; virtual const TransformationReducer *vars () const { return 0; } - virtual bool result_is_merged () const { return true; } // we believe so ... + virtual bool result_is_merged () const { return false; } // isn't merged for nested hulls :( virtual bool requires_raw_input () const { return false; } virtual bool wants_variants () const { return true; } virtual bool result_must_not_be_merged () const { return false; } diff --git a/src/db/unit_tests/dbDeepRegionTests.cc b/src/db/unit_tests/dbDeepRegionTests.cc index 46b57bf22..f02a2f1db 100644 --- a/src/db/unit_tests/dbDeepRegionTests.cc +++ b/src/db/unit_tests/dbDeepRegionTests.cc @@ -694,8 +694,8 @@ TEST(10_HullsAndHoles) db::Region hulls = r1_sized.hulls (); db::Region holes = r1_sized.holes (); - EXPECT_EQ (hulls.is_merged (), true); - EXPECT_EQ (holes.is_merged (), true); + EXPECT_EQ (hulls.is_merged (), false); + EXPECT_EQ (holes.is_merged (), false); db::Layout target; unsigned int target_top_cell_index = target.add_cell (ly.cell_name (top_cell_index));