From e8ab23bf4647a6dd9c9606fa805a35e3ccf00c2b Mon Sep 17 00:00:00 2001 From: Francois Pons Date: Thu, 31 Jul 2003 16:29:12 +0000 Subject: added urpm::shlock_urpmi_db to shared lock on urpmi db (used by urpmi, urpmq and urpmf). --- urpm.pm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/urpm.pm b/urpm.pm index 8ca2705b..636a1d06 100644 --- a/urpm.pm +++ b/urpm.pm @@ -2478,7 +2478,16 @@ sub exlock_urpmi_db { open LOCK_FILE, ">$urpm->{statedir}/.LOCK"; flock LOCK_FILE, $LOCK_EX|$LOCK_NB or $urpm->{fatal}(7, N("urpmi database locked")); } +sub shlock_urpmi_db { + my ($urpm) = @_; + + #- avoid putting a require on Fcntl ':flock' (which is perl and not perl-base). + my $LOCK_EX = 2; + #- lock urpmi database, but keep lock to wait for an urpmi.update to finish. + open LOCK_FILE, ">$urpm->{statedir}/.LOCK"; + flock LOCK_FILE, $LOCK_EX or $urpm->{fatal}(7, N("urpmi database locked")); +} sub unlock_urpmi_db { my ($_urpm) = @_; -- cgit v1.2.1