simplify $ENV{TERMCAP} handling: don't bother setting anything if
authorespie <espie@openbsd.org>
Mon, 6 Nov 2023 08:11:11 +0000 (08:11 +0000)
committerespie <espie@openbsd.org>
Mon, 6 Nov 2023 08:11:11 +0000 (08:11 +0000)
the variable doesn't exist

gnu/usr.bin/perl/cpan/Term-Cap/Cap.pm

index 6ff3748..5d3d296 100644 (file)
@@ -222,13 +222,12 @@ sub Tgetent
     $tmp_term = $self->{TERM};
     my $seen = {};
 
-    my $foo = ( exists $ENV{TERMCAP} ? $ENV{TERMCAP} : '' );
-
-    # $entry is the extracted termcap entry
-    if ( ( $foo !~ m:^/:s ) && ( $foo =~ m/(^|\|)\Q$tmp_term\E[:|]/s ) )
-    {
-        $entry = $foo;
-       $seen->{$tmp_term} = 1;
+    if (exists $ENV{TERMCAP}) {
+       local $_ = $ENV{TERMCAP};
+       if ( !m:^/:s && m/(^|\|)\Q$tmp_term\E[:|]/s ) {
+           $entry = $_;
+           $seen->{$tmp_term} = 1;
+       }
     }
 
     my @termcap_path = termcap_path();