[PATCH v2 1/8] gitweb: esc_html_hl_regions(): Don't create empty <span> elements
- From
Michał Kiedrowicz <michal.kiedrowicz@gmail.com>
- Date
- Mar 23, 2012, 22:56 UTC
- Message-ID
- <1332543417-19664-2-git-send-email-michal.kiedrowicz@gmail.com>
- In-Reply-To
- <1332543417-19664-1-git-send-email-michal.kiedrowicz@gmail.com>
if $s->[1] is equal to or less than $s->[0], esc_html_hl_regions() generates an empty <span> element. It normally shouldn't be visible in the web broweser, but it doesn't look good when looking at page source. It also minimally increases generated page size for no special reason.
Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com> ---
I don't know if any code currently can produce empty <span> elements, but diff refinement highlighning does it.
gitweb/gitweb.perl | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl index a8b5fad..af645e5 100755 --- a/gitweb/gitweb.perl +++ b/gitweb/gitweb.perl @@ -1738,6 +1738,9 @@ sub esc_html_hl_regions { my $pos = 0; for my $s (@sel) { + # Don't craete empty <span> elements. + next if $s->[1] <= $s->[0]; + $out .= esc_html(substr($str, $pos, $s->[0] - $pos)) if ($s->[0] - $pos > 0); $out .= $cgi->span({-class => $css_class},
-- 1.7.8.4