From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on dcvr.yhbt.net X-Spam-Level: X-Spam-Status: No, score=-4.0 required=3.0 tests=ALL_TRUSTED,BAYES_00 shortcircuit=no autolearn=ham autolearn_force=no version=3.4.2 Received: from localhost (dcvr.yhbt.net [127.0.0.1]) by dcvr.yhbt.net (Postfix) with ESMTP id 0D4561FA01 for ; Wed, 24 Mar 2021 09:23:36 +0000 (UTC) From: Eric Wong To: meta@public-inbox.org Subject: [PATCH 4/9] lei: update {3} after -C chdirs Date: Wed, 24 Mar 2021 14:23:30 +0500 Message-Id: <20210324092335.12345-5-e@80x24.org> In-Reply-To: <20210324092335.12345-1-e@80x24.org> References: <20210324092335.12345-1-e@80x24.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: This is necessary for lei->rel2abs correctness, and may eventually be useful if we can use *at syscalls. --- lib/PublicInbox/LEI.pm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/PublicInbox/LEI.pm b/lib/PublicInbox/LEI.pm index ee991f80..74372532 100644 --- a/lib/PublicInbox/LEI.pm +++ b/lib/PublicInbox/LEI.pm @@ -640,6 +640,11 @@ sub dispatch { next if $d eq ''; # same as git(1) chdir $d or return fail($self, "cd $d: $!"); } + if (delete $self->{3}) { # update cwd for rel2abs + opendir my $dh, '.' or + return fail($self, "opendir . $!"); + $self->{3} = $dh; + } } $cb->($self, @argv); } elsif (grep(/\A-/, $cmd, @argv)) { # --help or -h only