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 2012/06/17 21:49:47 UTC
[Bug 6808] New: AsyncLoop and Perl 5.16.0
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6808
Priority: P2
Bug ID: 6808
Assignee: dev@spamassassin.apache.org
Summary: AsyncLoop and Perl 5.16.0
Severity: normal
Classification: Unclassified
OS: Linux
Reporter: software+spamassassin@kd6lvw.ampr.org
Hardware: All
Status: NEW
Version: 3.3.2
Component: Plugins
Product: Spamassassin
Use of uninitialized value in string ne at
/usr/local/lib/perl5/site_perl/5.16.0/Mail/SpamAssassin/AsyncLoop.pm line 173.
Use of uninitialized value in string ne at
/usr/local/lib/perl5/site_perl/5.16.0/Mail/SpamAssassin/AsyncLoop.pm line 174.
plugin: eval failed: oops, no key at
/usr/local/lib/perl5/site_perl/5.16.0/Mail/SpamAssassin/AsyncLoop.pm line 174.
No Errors under perl 5.14.2. These appeared immediately after upgrading my
perl interpreter to 5.16.0. Apparently, the newest perl version does not like
the code that SA has.
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 6808] AsyncLoop and Perl 5.16.0
Posted by bu...@bugzilla.spamassassin.org.
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6808
--- Comment #3 from Mark Martinec <Ma...@ijs.si> ---
Created attachment 5078
--> https://issues.apache.org/SpamAssassin/attachment.cgi?id=5078&action=edit
AsyncLoop.pm: don't warn on undef
> $ent->{id} or die "oops, no id";
> $ent->{key} or die "oops, no key";
> $ent->{type} or die "oops, no type";
I applied a reshuffled variant of the above, thanks!
(the {id} could potentially be 0, so I tried to stay on the safe side)
trunk (3.4):
Bug 6808: AsyncLoop and Perl 5.16.0
Sending lib/Mail/SpamAssassin/AsyncLoop.pm
Committed revision 1354161.
So this quenches a warning, but does not address how this could
happen at all. These three items are supposed to be always there.
> Surprisingly this has been silently working since apparently "" eq undef
> in perl 5.8.8
> /usr/bin/perl5.8.8 -e 'my $foo; print "true\n" if $foo ne ""'
I don't think there has been any change in this area with more
recent version of perl: the undef has always been equal to "".
Now back to the original issue:
> No Errors under perl 5.14.2. These appeared immediately after upgrading my
> perl interpreter to 5.16.0. Apparently, the newest perl version does not
> like the code that SA has.
No idea. It works fine here under 5.16.0.
Just guessing: perhaps an issue with a module Net::DNS, or with
a DNS resolver not retaining a request id in its reply.
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 6808] AsyncLoop and Perl 5.16.0
Posted by bu...@bugzilla.spamassassin.org.
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6808
Todd Rinaldo <to...@cpanel.net> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |toddr@cpanel.net
--- Comment #1 from Todd Rinaldo <to...@cpanel.net> ---
Relevant code. The first die is line 173:
sub start_lookup {
my ($self, $ent, $master_deadline) = @_;
die "oops, no id" unless $ent->{id} ne '';
die "oops, no key" unless $ent->{key} ne '';
die "oops, no type" unless $ent->{type} ne '';
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 6808] AsyncLoop and Perl 5.16.0
Posted by bu...@bugzilla.spamassassin.org.
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6808
--- Comment #2 from Todd Rinaldo <to...@cpanel.net> ---
I assume these are being passed in undef.
If 0 is invalid, the simplest fix is just this right?
$ent->{id} or die "oops, no id";
$ent->{key} or die "oops, no key";
$ent->{type} or die "oops, no type";
Surprisingly this has been silently working since apparently "" eq undef in
perl 5.8.8
/usr/bin/perl5.8.8 -e 'my $foo; print "true\n" if $foo ne ""'
--
You are receiving this mail because:
You are the assignee for the bug.
[Bug 6808] AsyncLoop and Perl 5.16.0
Posted by bu...@bugzilla.spamassassin.org.
https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6808
Mark Martinec <Ma...@ijs.si> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
Target Milestone|Undefined |3.4.0
--- Comment #4 from Mark Martinec <Ma...@ijs.si> ---
Closing for now. Please re-open if the problem re-occurs with SpamAssassin
3.4.0
(or the current trunk). Related code has been rewritten with changes in Bug
6884.
--
You are receiving this mail because:
You are the assignee for the bug.