Mailing List Archive

svn commit: r485668 - /spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/BodyRuleBaseExtractor.pm
Author: jm
Date: Mon Dec 11 06:03:13 2006
New Revision: 485668

URL: http://svn.apache.org/viewvc?view=rev&rev=485668
Log:
allow extraction of some rule bases with less changes made to the original regexp

Modified:
spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/BodyRuleBaseExtractor.pm

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/BodyRuleBaseExtractor.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/BodyRuleBaseExtractor.pm?view=diff&rev=485668&r1=485667&r2=485668
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/BodyRuleBaseExtractor.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/BodyRuleBaseExtractor.pm Mon Dec 11 06:03:13 2006
@@ -357,10 +357,12 @@
die "anchors" if $rule =~ /(?:\$|\\Z)\)?$/;

# simplify (?:..) to (..)
- $rule =~ s/\(\?:/\(/g;
+ $main->{bases_allow_noncapture_groups} or
+ $rule =~ s/\(\?:/\(/g;

# this must be before reversing
- if ($main->{bases_can_use_alternations}||$main->{bases_split_out_alternations})
+ if (($main->{bases_can_use_alternations}||$main->{bases_split_out_alternations})
+ && !$main->{bases_can_use_quantifiers})
{
# /foo (bar)? baz/ simplify to /foo (bar|) baz/
$rule =~ s/(?<!\\)(\([^\(\)]*)\)\?/$1\|\)/gs;