--- MIME-Lite-3.028/lib/MIME/Lite.pm- 2011-11-09 05:48:12.000000000 +0400 +++ MIME-Lite-3.028/lib/MIME/Lite.pm 2011-11-13 10:16:05.776206160 +0400 @@ -437,14 +437,16 @@ my @FieldOrder; ### See if we have File::Basename my $HaveFileBasename = 0; -if ( eval "require File::Basename" ) { # not affected by $PARANOID, core Perl +if ( require File::Basename ) { # not affected by $PARANOID, core Perl $HaveFileBasename = 1; push @Uses, "F$File::Basename::VERSION"; } ### See if we have/want MIME::Types my $HaveMimeTypes = 0; -if ( !$PARANOID and eval "require MIME::Types; MIME::Types->VERSION(1.28);" ) { +if ( !$PARANOID ) { + require MIME::Types; + MIME::Types->VERSION(1.28); $HaveMimeTypes = 1; push @Uses, "T$MIME::Types::VERSION"; } @@ -536,23 +538,20 @@ BEGIN { #------------------------------ -if ( !$PARANOID and eval "require Mail::Address" ) { +if ( !$PARANOID ) { + require Mail::Address; push @Uses, "A$Mail::Address::VERSION"; - eval q{ - sub extract_full_addrs { + *extract_full_addrs = sub { my @ret=map { $_->format } Mail::Address->parse($_[0]); return wantarray ? @ret : $ret[0] - } - sub extract_only_addrs { + }; + *extract_only_addrs = sub { my @ret=map { $_->address } Mail::Address->parse($_[0]); return wantarray ? @ret : $ret[0] - } - }; ### q + }; } else { - eval q{ *extract_full_addrs=*my_extract_full_addrs; *extract_only_addrs=*my_extract_only_addrs; - }; ### q } ### if #============================== @@ -567,12 +566,12 @@ if ( !$PARANOID and eval "require Mail:: # Encode the given string using BASE64. # Unless paranoid, we try to load the real code before supplying our own. -if ( !$PARANOID and eval "require MIME::Base64" ) { +if ( !$PARANOID ) { + require MIME::Base64; import MIME::Base64 qw(encode_base64); push @Uses, "B$MIME::Base64::VERSION"; } else { - eval q{ - sub encode_base64 { + *encode_base64 = sub { my $res = ""; my $eol = "\n"; @@ -590,8 +589,7 @@ if ( !$PARANOID and eval "require MIME:: ### Break encoded string into lines of no more than 76 characters each: $res =~ s/(.{1,76})/$1$eol/g if (length $eol); return $res; - } ### sub - } ### q + }; } ### if #------------------------------ @@ -605,12 +603,12 @@ if ( !$PARANOID and eval "require MIME:: # # Unless paranoid, we try to load the real code before supplying our own. -if ( !$PARANOID and eval "require MIME::QuotedPrint" ) { +if ( !$PARANOID ) { + require MIME::QuotedPrint; import MIME::QuotedPrint qw(encode_qp); push @Uses, "Q$MIME::QuotedPrint::VERSION"; } else { - eval q{ - sub encode_qp { + *encode_qp = sub { my $res = shift; local($_); $res =~ s/([^ \t\n!-<>-~])/sprintf("=%02X", ord($1))/eg; ### rule #2,#3 @@ -624,8 +622,7 @@ if ( !$PARANOID and eval "require MIME:: $brokenlines .= "$1=\n" while $res =~ s/^(.{70}([^=]{2})?)//; ### 70 was 74 $brokenlines =~ s/=\n$// unless length $res; "$brokenlines$res"; - } ### sub - } ### q + }; } ### if