logo       
Google Custom Search
    AddThis Social Bookmark Button
-->

2.055 POP3 Transport/POP3.pm bug: msg#00004

Subject: 2.055 POP3 Transport/POP3.pm bug
Hi Mark,

Using the following test script with a vanilla 2.055 install:
### test script
#!/usr/bin/perl
use strict;
use warnings;
use Mail::Box::Manager;

my $mgr = new Mail::Box::Manager();
my $pop3 = $mgr->open(
  type => 'pop3',
  username => 'USERNAME',
  password => 'PASSWORD',
  server_name => 'HOST',
  server_port => 110,
  authenticate => 'AUTO',
) or die "$!";

$mgr->closeAllFolders();
### end test script

throws up this error:
Can't call method "isModified" without a package or object reference at
/usr/local/share/perl/5.8.4/Mail/Box.pm line 434, <GEN1> line 122.

This is caused by a $_ scoping issue which seems to be fixed by the following 
patch:
### begin patch
--- /usr/local/share/perl/5.8.4/Mail/Transport/POP3.pm  2004-06-07 
23:51:19.000000000 -0400
+++ /usr/local/share/perl/5.8.4/Mail/Transport/POP3.pm.new      2004-06-07 
23:51:16.000000000 -0400
@@ -366,10 +366,10 @@ sub status($;$)
     if(OK($uidl))
     {   my @n2uidl;
         $n2uidl[$self->{MTP_messages}] = undef; # optimization, sets right size
-        while(<$socket>)
-        {   last if substr($_, 0, 1) eq '.';
-            s#\r?\n$##; m#^(\d+) (.+)#;
-            $n2uidl[$1] = $2;
+        while( my $line = <$socket>)
+        {   last if substr($line, 0, 1) eq '.';
+            $line =~ s#\r?\n$##; $line =~ m#^(\d+) (.+)#;
+            $n2uidl[$1] = $2 if ($1 && $2);
         }
         shift @n2uidl; # make message 1 into index 0
         $self->{MTP_n2uidl} = \@n2uidl;

### end patch


Thanks,
jason


--
Jason Woodward
woodwardj@xxxxxxxx

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org
 
mQGiBDrwHPoRBAC3nDJRLKTcFcJWid9PN08ChMI7tuQevomWoVeZpZZ0zzip2w/E
ts55Mx58eRRGFFmgZZGeP7EhyUPzb668LIsU62gFO7G5/oWCr3U3g3peabZsqRC9
FchdiM8DJqQu/7ryAjbQ4OFCSW+jAsMC3tKXrdaB48WiipiXUcKR/sONGwCgzGPf
yxDgOc7n9xWVH0qbUDC/vZsEAKvbckkhpe9/x2A4E15l6DUbliEmboeHiT9NJaok
vLo3ElSO1o6ld5+VhFIkhRmmovrS8oyttZNv8HjMEYf6L3NdZybTHfcdS5EIpguH
Xx2/IGzJKbgX3vM/qhJ0+F1LPuN20mOT0NO/29AXJn3V7rTKoKf/uOOKD+Eqh4r1
QVMoBAC3ZPF3idmuW3j4tqhOaWe2qHlLwEClwdsTG+KOsVYh1sU4RvyMErDIU6r/
MomkLAJfbtBTXKcknW68Y4Uv4B+UkyopklktRBFiMBffoHLUfkkQk/L9Yg1YG27N
COsECiamylF8hNSTcNIQqYXDpyoRcSi2p7gqkxJZrk7GwrX2ObQjSmFzb24gV29v
ZHdhcmQgPHdvb2R3YXJkakBqYW9zLm9yZz6IVwQTEQIAFwUCOvAc+gULBwoDBAMV
AwIDFgIBAheAAAoJEGu22odUp/oeN2IAoKHS+qH8AenlOTKL0Ifl3q1QSlDBAKDL
bvvgl7HoRTHY2b9n3pEPr+KIh7kBDQQ68Bz9EAQA2Ds/2VKc08qaNIkA1okxITmQ
aaNjUrm/au9jNzm9lyEFXWXBNegzP5Y4A1ESDKUt5RETgVhNKd9mGkP7tgPTs3f6
Z595K6W7xeZWONKbl578RbWwE1CiMqEOuXwr1/q0DzfwmNQLcqDcX3o0DEpWE+uZ
G+5CtpkXYiDmccigDKMAAwUD/iZDxEr1HC4iLnGXUCDpxXEtp7Fx150baFzZITns
4hpKRAbTR65s2tL8rh5d8ThDgqW5C9JQja9fMxI2u7zlyM2ALFXJP1xwgZTSOYvn
sq+x41i5tJpce+pDmMEl8X0wew2Z5ZRPfDLv64kKPIGNgVXsAHirH2KjChZat4VC
qkZciEYEGBECAAYFAjrwHP0ACgkQa7bah1Sn+h7qkQCePz0ds5O/dsZrm450pjLs
2V3BkMAAn2/6alBBC9b9F94svdOf0mGY/G5w
=4p8c
-----END PGP PUBLIC KEY BLOCK-----

my($c,@s)=(0,qw( | / - \ ));$|++;my$p;&{sub{map{$p.=chr$_}
unpack(join('a',('',split(//,$_->[1]))),$_->[0]);}}foreach
[qw/74117115116 2333/],[qw/65110111116104101114 2333333/],
[qw/80101114108 2333/],[qw/729799107101114 222333/];{my$z=
$c<4?$s[$c++]:$s [$c=0];printf"\ec%s%s%s",$z,$p,$z,select*
STDOUT,*STDOUT,*STDOUT,0.1,;redo;}##########JAPH##########
<Prev in Thread] Current Thread [Next in Thread>