diff options
Diffstat (limited to 'lib/PublicInbox/Lock.pm')
-rw-r--r-- | lib/PublicInbox/Lock.pm | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/PublicInbox/Lock.pm b/lib/PublicInbox/Lock.pm index 7fd17745..f6eaa5ce 100644 --- a/lib/PublicInbox/Lock.pm +++ b/lib/PublicInbox/Lock.pm @@ -8,6 +8,7 @@ use v5.10.1; use Fcntl qw(:flock :DEFAULT); use Carp qw(croak); use PublicInbox::OnDestroy; +use File::Temp (); # we only acquire the flock if creating or reindexing; # PublicInbox::Import already has the lock on its own. @@ -40,4 +41,10 @@ sub lock_for_scope { PublicInbox::OnDestroy->new(\&lock_release, $self); } +sub new_tmp { + my ($cls, $ident) = @_; + my $tmp = File::Temp->new("$ident.lock-XXXXXX", TMPDIR => 1); + bless { lock_path => $tmp->filename, tmp => $tmp }, $cls; +} + 1; |