user/dev discussion of public-inbox itself
 help / color / mirror / code / Atom feed
* [PATCH] searchview: avoid uninitialized vals in %rmap_inc
@ 2024-06-05 20:03 Eric Wong
  0 siblings, 0 replies; only message in thread
From: Eric Wong @ 2024-06-05 20:03 UTC (permalink / raw)
  To: meta

Modules (e.g. `PublicInbox::Gcf2') may have an undef value in
the %rmap_inc hash table if an attempt has been made to load it
and failed due to a missing libgit2-dev dependency.  Avoid using
it in interpolation to avoid warnings.
---
 lib/PublicInbox/SearchView.pm | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/lib/PublicInbox/SearchView.pm b/lib/PublicInbox/SearchView.pm
index 9919e25c..9ce1b1ee 100644
--- a/lib/PublicInbox/SearchView.pm
+++ b/lib/PublicInbox/SearchView.pm
@@ -154,9 +154,15 @@ sub path2inc ($) {
 	if (my $short = $rmap_inc{$full}) {
 		return $short;
 	} elsif (!scalar(keys %rmap_inc) && -e $full) {
-		%rmap_inc = map {; "$INC{$_}" => $_ } keys %INC;
+		# n.b. $INC{'PublicInbox::Gcf2'} is undef if libgit2-dev
+		# doesn't exist
+		my $f;
+		%rmap_inc = map {;
+			$f = $INC{$_};
+			defined $f ? ($f, $_) : ();
+		} keys %INC;
 		# fall back to basename as last resort
-		$rmap_inc{$full} // (split('/', $full))[-1];
+		$rmap_inc{$full} // (split(m'/', $full))[-1];
 	} else {
 		$full;
 	}

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2024-06-05 20:03 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-05 20:03 [PATCH] searchview: avoid uninitialized vals in %rmap_inc Eric Wong

Code repositories for project(s) associated with this public inbox

	https://80x24.org/public-inbox.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).