http://bugzilla.spamassassin.org/show_bug.cgi?id=2437
[EMAIL PROTECTED] changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #1572 is|0 |1 obsolete| | ------- Additional Comments From [EMAIL PROTECTED] 2004-08-19 12:27 ------- Created an attachment (id=2268) --> (http://bugzilla.spamassassin.org/attachment.cgi?id=2268&action=view) suggested patch ok, here's my suggested fix for the issue. 1) instead of using PMS->{score} or PMS->get_nonlearn_nonuserconf_points(), just call the function and have it decide what the autolearn score is. 2) rename get_nonlearn_nonuserconf_points() to get_autolearn_points() since that's what it's actually doing -- it's an API change, but in theory only an internal one... 3) get rid of the hits go to {score} or {learned_points} depending on what rule it is thing in handle_hit... {score} is always updated, {learned_points} is set for learn rules only via get_autolearn_points, and there's no backend kluge to do {score}+={learned_points} in check() anymore. 4) move the body/header points bit from handle_hit to get_autolearn_points. first, this makes the body/header points calculation use the correct set0/1 scoreset and not the set2/3 scoreset. second, if autolearning is disabled for whatever reason, we don't need to spend a lot of time going through dealing with body/header points that won't actually get used anywhere. 5) move the change scoreset to 0/1 from 2/3 bit from learn() to get_autolearn_points() since learn() doesn't actually care, it's only used for score calculation. passes "make test" for me, but I haven't put it through more rigorous testing yet. ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.