https://bz.apache.org/SpamAssassin/show_bug.cgi?id=7735
--- Comment #40 from Henrik Krohns <apa...@hege.li> --- (In reply to Sidney Markowitz from comment #37) > > I got confused. I really have two separate questions. One is how the checks > for meta and dependencies work when a meta is defined with a header rule > like __THREAD_INDEX_GOOD, which I see is used with && operator, and a > separate question is how the use of || operator works out with the > dependencies. I don't know whether or not any of the header rules are used > with a || in a meta definition. It makes absolutely no difference what kind type of rules or operators are used in a meta. Meta only works with and depends on "rulenames". There is no "dependencies" other than waiting for all rules/rulenames to be ready ($pms->{tests_already_hit}->{$rulename} created by got_hit or rule_ready). meta T_THREAD_INDEX_BAD __HAS_THREAD_INDEX && !__THREAD_INDEX_GOOD For that do_meta_tests basically does: $h = $pms->{tests_already_hit}; if (exists $h->{__HAS_THREAD_INDEX} && exists $h->{__THREAD_INDEX_GOOD}) { $result = eval { $h->{__HAS_THREAD_INDEX} && !$h->{__THREAD_INDEX_GOOD} }; } else { # loop until they exist, or declare unrun in finish_meta_tests } -- You are receiving this mail because: You are the assignee for the bug.