The code expects that the folder is already present, this patch creates
it if missing.

Without this path the test fails with:

open(/home/debci/.cache/public-inbox/inline-c/.public-inbox.lock): No such file 
or directory at /usr/share/perl5/PublicInbox/Gcf2.pm line 20

Signed-off-by: Ricardo Ribalda <[email protected]>
---
 lib/PublicInbox/Gcf2.pm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/lib/PublicInbox/Gcf2.pm b/lib/PublicInbox/Gcf2.pm
index 41ee0715..02cd0de2 100644
--- a/lib/PublicInbox/Gcf2.pm
+++ b/lib/PublicInbox/Gcf2.pm
@@ -10,12 +10,14 @@ use PublicInbox::Spawn qw(which popen_rd); # may set 
PERL_INLINE_DIRECTORY
 use Fcntl qw(LOCK_EX SEEK_SET);
 use Time::HiRes qw(clock_gettime CLOCK_MONOTONIC);
 use IO::Handle; # autoflush
+use File::Path qw(make_path);
 BEGIN {
        my (%CFG, $c_src);
        # PublicInbox::Spawn will set PERL_INLINE_DIRECTORY
        # to ~/.cache/public-inbox/inline-c if it exists
        my $inline_dir = $ENV{PERL_INLINE_DIRECTORY} //
                die 'PERL_INLINE_DIRECTORY not defined';
+       make_path($inline_dir);
        my $f = "$inline_dir/.public-inbox.lock";
        open my $fh, '+>', $f or die "open($f): $!";
 
-- 
2.35.1


Reply via email to