t0021/rot13-filter: refactor checking final lf

As checking for a lf character at the end of a buffer
will be useful in another function, let's refactor this
functionality into a small remove_final_lf_or_die()
helper function.

Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Christian Couder 2017-11-05 22:38:34 +01:00 committed by Junio C Hamano
parent 25cbfe3465
commit 4a9ef1bbc1

View File

@ -93,12 +93,20 @@ sub packet_bin_read {
}
}
sub packet_txt_read {
my ( $res, $buf ) = packet_bin_read();
unless ( $res == -1 or $buf eq '' or $buf =~ s/\n$// ) {
sub remove_final_lf_or_die {
my $buf = shift;
unless ( $buf =~ s/\n$// ) {
die "A non-binary line MUST be terminated by an LF.\n"
. "Received: '$buf'";
}
return $buf;
}
sub packet_txt_read {
my ( $res, $buf ) = packet_bin_read();
unless ( $res == -1 or $buf eq '' ) {
$buf = remove_final_lf_or_die($buf);
}
return ( $res, $buf );
}