From b39195ec7b0759388072af02462fb1ade969353b Mon Sep 17 00:00:00 2001 From: Steve Hancock Date: Sun, 13 Sep 2020 17:37:32 -0700 Subject: [PATCH] do not create a zero length file by deleting semicolons --- lib/Perl/Tidy/Formatter.pm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/Perl/Tidy/Formatter.pm b/lib/Perl/Tidy/Formatter.pm index 06136cb9..0ebd4648 100644 --- a/lib/Perl/Tidy/Formatter.pm +++ b/lib/Perl/Tidy/Formatter.pm @@ -2380,6 +2380,7 @@ sub respace_tokens { my $last_nonblank_type = ';'; my $last_nonblank_token = ';'; my $last_nonblank_block_type = ''; + my $nonblank_token_count = 0; my $store_token = sub { my ($item) = @_; @@ -2448,6 +2449,7 @@ sub respace_tokens { $last_nonblank_type = $type; $last_nonblank_token = $item->[_TOKEN_]; $last_nonblank_block_type = $item->[_BLOCK_TYPE_]; + $nonblank_token_count++; } # and finally, add this item to the new array @@ -3062,6 +3064,12 @@ sub respace_tokens { } } + # do not delete only nonblank token in a file + else { + my $Kn = $self->K_next_nonblank($KK); + $ok_to_delete = defined($Kn) || $nonblank_token_count; + } + if ($ok_to_delete) { $self->note_deleted_semicolon($input_line_number); next; -- 2.39.5