fix filter passthrough & fix double-application of view rules in some cases

This commit is contained in:
Ryan Fleury
2024-09-20 17:19:13 -07:00
parent 8babd89f47
commit ebaad35813
2 changed files with 1 additions and 2 deletions
@@ -106,7 +106,6 @@ EV_VIEW_RULE_BLOCK_PROD_FUNCTION_DEF(default)
////////////////////////////
//- rjf: unpack expression type info
//
expr = ev_expr_from_expr_view_rules(arena, expr, view_rules);
E_IRTreeAndType irtree = e_irtree_and_type_from_expr(scratch.arena, expr);
E_TypeKey type_key = e_type_unwrap(irtree.type_key);
E_TypeKind type_kind = e_type_kind_from_key(type_key);
+1 -1
View File
@@ -7884,7 +7884,7 @@ EV_VIEW_RULE_BLOCK_PROD_FUNCTION_DEF(rd_collection_block_prod)
String8 entity_expr_string = entity->string;
EV_Key entity_parent_key = rd_parent_ev_key_from_entity(entity);
EV_Key entity_key = rd_ev_key_from_entity(entity);
EV_BlockList blocks = ev_block_list_from_view_expr_keys(arena, view, str8_zero(), &top_level_view_rules, entity_expr_string, entity_parent_key, entity_key, depth);
EV_BlockList blocks = ev_block_list_from_view_expr_keys(arena, view, filter, &top_level_view_rules, entity_expr_string, entity_parent_key, entity_key, depth);
FuzzyMatchRangeList matches = fuzzy_match_find(scratch.arena, filter, entity_expr_string);
if(blocks.total_semantic_row_count > 1 || matches.count == matches.needle_part_count)
{