@@ -, +, @@ $ kshell k$ prove t/Koha/Email.t => FAIL: Sender is not handled correctly! => SUCCESS: Tests pass! The from parameter is correct! No Sender header sent! --- Koha/Email.pm | 11 +++++++++++ 1 file changed, 11 insertions(+) --- a/Koha/Email.pm +++ a/Koha/Email.pm @@ -177,6 +177,17 @@ sub send_or_die { $args->{to} = \@recipients; } + unless ( $args->{from} ) { # don't do it if passed an explicit 'from' param + my @headers = $self->email->header_str_pairs; + foreach my $pair ( pairs @headers ) { + my ( $header, $value ) = @$pair; + $args->{from} = $value if $header eq 'Sender'; + } + + # Remove the Sender header + $self->email->header_str_set('Sender'); + } + $self->SUPER::send_or_die($args); } --