X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FMisc.pm;h=895681fb0431c5c19480cd954e10ce45e3579652;hb=e6820a61a43c840ef08a11bdda41507dac2a9ff7;hp=d973feb9f4cd98c5f0891c36a4dc10bc24301f32;hpb=624b2d44625f69d71175c3348cae635d580c890b;p=freeside.git diff --git a/FS/FS/Misc.pm b/FS/FS/Misc.pm index d973feb9f..895681fb0 100644 --- a/FS/FS/Misc.pm +++ b/FS/FS/Misc.pm @@ -353,11 +353,16 @@ sub send_email { $smtp_opt{'ssl'} = 1 if defined($enc) && $enc eq 'tls'; $transport = Email::Sender::Transport::SMTP->new( %smtp_opt ); } - - eval { sendmail($message, { transport => $transport }); }; - ref($@) ? ( $@->code ? $@->code.' ' : '' ). $@->message - : $@; - + + local $@; # just in case + eval { sendmail($message, { transport => $transport }) }; + + if(ref($@) and $@->isa('Email::Sender::Failure')) { + return ($@->code ? $@->code.' ' : '').$@->message + } + else { + return $@; + } } =item send_fax OPTION => VALUE ...