From ca6239a32de065e1b9760fbccdd28ebb4a4bf27f Mon Sep 17 00:00:00 2001 From: Karim Jerbi Date: Sun, 28 Jun 2026 18:46:02 +0100 Subject: [PATCH] chore: mark fill_tris_low unpaired sites with FIXME dimension.rs (x2), multileader.rs (x3), table.rs (x1) emit fill_tris without a corresponding fill_tris_low. These will trip the debug_assert_eq! added in the preceding commit when the entity appears inside a block definition. Each site is marked with a FIXME referencing block_cache.rs:1397 and the correct fix pattern (split_ds on each vertex). --- src/entities/dimension.rs | 10 ++++++++-- src/entities/multileader.rs | 9 +++++++++ src/entities/table.rs | 3 +++ 3 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/entities/dimension.rs b/src/entities/dimension.rs index b4c87d78c..106197000 100644 --- a/src/entities/dimension.rs +++ b/src/entities/dimension.rs @@ -1261,6 +1261,9 @@ fn tessellate_dimension_inner( plinegen: true, vp_scissor: None, fill_tris: geom.arrow_fill, + // FIXME: fill_tris_low left empty — needs double-single split to match + // fill_tris. Any geometry from this path inside a block definition will + // trip the debug_assert_eq! in emit_wire (block_cache.rs:1397). fill_tris_low: Vec::new(), }); @@ -1293,8 +1296,11 @@ fn tessellate_dimension_inner( aabb: WireModel::UNBOUNDED_AABB, plinegen: true, vp_scissor: None, - fill_tris: rect, - fill_tris_low: Vec::new(), + fill_tris: rect, + // FIXME: fill_tris_low left empty — needs double-single split to match + // fill_tris. Any geometry from this path inside a block definition will + // trip the debug_assert_eq! in emit_wire (block_cache.rs:1397). + fill_tris_low: Vec::new(), }); } } diff --git a/src/entities/multileader.rs b/src/entities/multileader.rs index 824f21537..73ee80002 100644 --- a/src/entities/multileader.rs +++ b/src/entities/multileader.rs @@ -1304,6 +1304,9 @@ impl MultiLeaderTess for MultiLeader { plinegen: true, vp_scissor: None, fill_tris: arrow_fill, + // FIXME: fill_tris_low left empty — needs double-single split to match + // fill_tris. Any geometry from this path inside a block definition will + // trip the debug_assert_eq! in emit_wire (block_cache.rs:1397). fill_tris_low: Vec::new(), }); @@ -1593,6 +1596,9 @@ impl MultiLeaderTess for MultiLeader { plinegen: true, vp_scissor: None, fill_tris: greek_tris, + // FIXME: fill_tris_low left empty — needs double-single split to match + // fill_tris. Any geometry from this path inside a block definition will + // trip the debug_assert_eq! in emit_wire (block_cache.rs:1397). fill_tris_low: Vec::new(), }); } @@ -1670,6 +1676,9 @@ impl MultiLeaderTess for MultiLeader { plinegen: true, vp_scissor: None, fill_tris: text_fill_tris, + // FIXME: fill_tris_low left empty — needs double-single split to match + // fill_tris. Any geometry from this path inside a block definition will + // trip the debug_assert_eq! in emit_wire (block_cache.rs:1397). fill_tris_low: Vec::new(), }); } diff --git a/src/entities/table.rs b/src/entities/table.rs index 2242c2c8b..b615c1cb8 100644 --- a/src/entities/table.rs +++ b/src/entities/table.rs @@ -755,6 +755,9 @@ pub fn tessellate_table( plinegen: true, vp_scissor: None, fill_tris, + // FIXME: fill_tris_low left empty — needs double-single split to match + // fill_tris. Any geometry from this path inside a block definition will + // trip the debug_assert_eq! in emit_wire (block_cache.rs:1397). fill_tris_low: Vec::new(), } };