- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
eval {
my $from = $class->get_env_sender($message);
$smtp->mail($from)
|| croak("Email::Send::Gmail: error sending 'from' $from");
my @to = $class->get_env_recipients($message);
my @ok = $smtp->to( @to, { SkipBad => 1 } )
|| croak("Email::Send::Gmail: error sending 'to' @to");
if ( @to != @ok ) {
my %to;
@to{@to} = (1) x @to;
delete @to{@ok};
@bad = keys %to;
}
croak("Email::Send::Gmail: no valid recipients") if @bad == @to;
};
Думаю понятно, какой это модуль с CPAN. Убило незнание приоритетов, в результате чего "|| croak" всегда возвращало в @ok число вместо результата выполнения $smtp->to
tirinox 16.09.2014 12:44 # +4
kegdan 16.09.2014 14:47 # +4
- че тут за херня?
- это ж перл
- понятно...
tirinox 16.09.2014 14:52 # 0
gh0stwizard 16.09.2014 14:32 # 0
Убивает незнание того, что для || результат return; и return 0; НЕ одно и тоже :)
Elvenfighter 16.09.2014 16:10 # 0
Вот иллюстрация, на случай, если я не так понял: http://ideone.com/kW6BdH
gh0stwizard 17.09.2014 11:58 # 0
P.S. Использовать || можно везде, где не собираемся возвращать список, либо делаем развертку через [defined] wantarray.
Dummy00001 16.09.2014 21:39 # 0
это не незнание приоритетов - кто-то очепятолся и написал `||` вместо `or`.
но код от исправления этого имо сильно лучше не станет.
3.14159265 16.09.2014 23:35 # +3
fixed
Elvenfighter 17.09.2014 11:47 # +3
Сегодня, в завтрашний день, программировать на Perl могут не только лишь все, мало кто может это делать.
Vasiliy 17.09.2014 12:22 # +2
Сегодня нашел http://rghost.ru/58060348
3.14159265 17.09.2014 13:42 # 0
Креатив зачётный, да.
inkanus-gray 17.09.2014 14:01 # +2
На meta.ua есть текстовая версия: http://forum.meta.ua/topic/t/186713.html
3.14159265 17.09.2014 14:15 # 0
guest 23.06.2015 01:12 # 0