You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@spamassassin.apache.org by bu...@bugzilla.spamassassin.org on 2004/02/29 20:32:32 UTC

[Bug 3110] unitialized value errors when running from home directory

http://bugzilla.spamassassin.org/show_bug.cgi?id=3110





------- Additional Comments From felicity@kluge.net  2004-02-29 11:32 -------
Subject: Re:  New: unitialized value errors when running from home directory

On Sun, Feb 29, 2004 at 03:38:55AM -0800, bugzilla-daemon@bugzilla.spamassassin.org wrote:
> Use of uninitialized value at /home/faisal/sausr/lib/perl5/site_perl/5.005/Mail/SpamAssassin/
> Bayes.pm line 519.
> Use of uninitialized value at /home/faisal/sausr/lib/perl5/site_perl/5.005/Mail/SpamAssassin/
> Bayes.pm line 521.
> Use of uninitialized value at /home/faisal/sausr/lib/perl5/site_perl/5.005/Mail/SpamAssassin/
> Bayes.pm line 522.

Hrm.  I can't seem to reproduce this with anything I throw at the code.
Please attach (via the web interface) a sample mail which causes this
problem.

BTW:

  if ($val =~ s/boundary=[\"\'](.*?)[\"\']/ /ig) {
    my $boundary = $1;
    $boundary =~ s/[a-fA-F0-9]/H/gs;
    # break up blocks of separator chars so they become their own tokens
    $boundary =~ s/([-_\.=]+)/ $1 /gs;
    $val .= $boundary;
  }

519 is the first inside substitution.  $boundary can't be uninitialized
in this if statement -- If the pattern doesn't match, the substitution
returns false, and the block is skipped; if the pattern matches and
there's nothing in the quotes, $1 is '' but not undef; if the pattern
matches and there is something in the quotes, $1 is that value.





------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.