You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by he...@apache.org on 2018/10/05 19:37:06 UTC

svn commit: r1842973 - in /spamassassin/trunk/lib/Mail/SpamAssassin: Conf/Parser.pm Plugin/Check.pm

Author: hege
Date: Fri Oct  5 19:37:06 2018
New Revision: 1842973

URL: http://svn.apache.org/viewvc?rev=1842973&view=rev
Log:
conf->{source_file} does not seem to be used for anything normally, simplify hash_line_for_rule

Modified:
    spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm
    spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm?rev=1842973&r1=1842972&r2=1842973&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm Fri Oct  5 19:37:06 2018
@@ -1244,9 +1244,12 @@ sub add_test {
     $conf->{priority}->{$name} ||= 0;
   }
   $conf->{priority}->{$name} ||= 0;
-  $conf->{source_file}->{$name} = $self->{currentfile};
 
   if ($conf->{main}->{keep_config_parsing_metadata}) {
+    # {source_file} eats lots of memory and is unused unless
+    # keep_config_parsing_metadata is set (ruleqa stuff)
+    $conf->{source_file}->{$name} = $self->{currentfile};
+
     $conf->{if_stack}->{$name} = $self->get_if_stack_as_string();
 
     if ($self->{file_scoped_attrs}->{testrules}) {

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm?rev=1842973&r1=1842972&r2=1842973&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/Check.pm Fri Oct  5 19:37:06 2018
@@ -1341,6 +1341,11 @@ EOT
 
 sub hash_line_for_rule {
   my ($self, $pms, $rulename) = @_;
+  # I have no idea why evals are being cluttered by "hashlines" ??
+  # Nobody cares about source_file unless keep_config_parsing_metadata is set!
+  # If you are debugging hanging rule, then simply uncomment this..
+  #return "\ndbg(\"rules: will run %s\", q(".$rulename."));\n";
+  return '' if !%{$pms->{conf}->{source_file}};
   # using tainted subr. argument may taint the whole expression, avoid
   my $u = untaint_var($pms->{conf}->{source_file}->{$rulename});
   return sprintf("\n#line 1 \"%s, rule %s,\"", $u, $rulename);