https://issues.apache.org/SpamAssassin/show_bug.cgi?id=5948

           Summary: uninitialized value within @pristine_headers
                    PerMsgStatus.pm line 832
           Product: Spamassassin
           Version: 3.2.5
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: enhancement
          Priority: P5
         Component: spamassassin
        AssignedTo: dev@spamassassin.apache.org
        ReportedBy: [EMAIL PROTECTED]


I noticed an error in /var/log/spamassassin/spamd.log --

Sat Jul 26 20:24:21 2008 [5009] warn: Use of uninitialized value within
@pristine_headers in pattern match (m//) at
/usr/lib/perl5/vendor_perl/5.10.0/Mail/SpamAssassin/PerMsgStatus.pm line 832,
<GEN7> line 5.
Sat Jul 26 20:24:21 2008 [5009] warn: Use of uninitialized value $separator in
concatenation (.) or string at
/usr/lib/perl5/vendor_perl/5.10.0/Mail/SpamAssassin/PerMsgStatus.pm line 907,
<GEN7> line 5.

Looking at the code, I think that

  my $separator = '';
  if ($pristine_headers[$#pristine_headers] =~ /^\s*$/) {
    $separator = pop @pristine_headers;
  }

should read
  my $separator = '';
  if (@pristine_headers && $pristine_headers[$#pristine_headers] =~ /^\s*$/) {
    $separator = pop @pristine_headers;
  }

in order to avoid setting #separator to undef if the pristine_headers array is
empty.
(This line of code is unchanged between 3.2.4 and 3.2.5, and I see the warnings
with both versions)


-- 
Configure bugmail: 
https://issues.apache.org/SpamAssassin/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

Reply via email to