From 2781a25857ab1100a92260b695a1c194fae3f305 Mon Sep 17 00:00:00 2001 From: Steve Hancock Date: Thu, 24 Mar 2022 19:14:02 -0700 Subject: [PATCH] fix issue b1330, -xlp edge case --- dev-bin/run_convergence_tests.pl.data | 19 +++++++++++++++++++ lib/Perl/Tidy/Formatter.pm | 9 ++++++--- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/dev-bin/run_convergence_tests.pl.data b/dev-bin/run_convergence_tests.pl.data index 1517ac34..d1c33ae0 100644 --- a/dev-bin/run_convergence_tests.pl.data +++ b/dev-bin/run_convergence_tests.pl.data @@ -9624,6 +9624,25 @@ WriteMakefile( --variable-maximum-line-length --want-break-before='=' +==> b1330.in <== + print $tbl->render_row( + [ # + "$STATUS->{$status}->[2] $STATUS->{$status}->[0] $RESET", + "$STATUS->{$status}->[2] @{[ $total->{data}->{$status} // 0 ]} $RESET", + ] + ); + + print $tbl->render_row( + [ # + "$STATUS->{$status}->[2] $STATUS->{$status}->[0] $RESET", + "$STATUS->{$status}->[2] @{[ $total->{data}->{$status} // 0 ]} $RESET", ] + ); + +==> b1330.par <== +--extended-line-up-parentheses +--indent-columns=1 +--square-bracket-vertical-tightness-closing=1 + ==> b140.in <== $cmd[ $i ]=[ $s, $e, $cmd, \@hunk, $i ] ; diff --git a/lib/Perl/Tidy/Formatter.pm b/lib/Perl/Tidy/Formatter.pm index beb47397..09e35690 100644 --- a/lib/Perl/Tidy/Formatter.pm +++ b/lib/Perl/Tidy/Formatter.pm @@ -10916,9 +10916,12 @@ sub collapsed_lengths { defined($K_c) && $rLL->[$K_terminal]->[_TYPE_] eq ',' - # Ignore a terminal comma, causes instability (b1297) - && ( $K_c - $K_terminal > 2 - || $rLL->[ $K_terminal + 1 ]->[_TYPE_] eq 'b' ) + # Ignore a terminal comma, causes instability (b1297, b1330) + && ( + $K_c - $K_terminal > 2 + || ( $K_c - $K_terminal == 2 + && $rLL->[ $K_terminal + 1 ]->[_TYPE_] ne 'b' ) + ) ) { my $Kend = $K_terminal; -- 2.39.5