# HG changeset patch # User Mahlon E. Smith # Date 1570128284 25200 # Node ID 99fdbf4a5f379d938f873cff424707aefdb25239 # Parent a629597fd647caebb499236335bdd0b00c93782e Be explicit with sticky removal, so two simultaneous processes don't create a race where sticky is left enabled. diff -r a629597fd647 -r 99fdbf4a5f37 lib/ezmlm.rb --- a/lib/ezmlm.rb Mon Sep 02 09:00:47 2019 -0700 +++ b/lib/ezmlm.rb Thu Oct 03 11:44:44 2019 -0700 @@ -11,10 +11,10 @@ # end # module Ezmlm - # $Id$ + # $Id: ezmlm.rb,v 81cc7d47f68f 2017/05/30 18:08:48 mahlon $ # Package version - VERSION = '1.1.1' + VERSION = '1.1.2' # Suck in the components. # diff -r a629597fd647 -r 99fdbf4a5f37 lib/ezmlm/list.rb --- a/lib/ezmlm/list.rb Mon Sep 02 09:00:47 2019 -0700 +++ b/lib/ezmlm/list.rb Thu Oct 03 11:44:44 2019 -0700 @@ -1,7 +1,6 @@ #!/usr/bin/ruby # vim: set nosta noet ts=4 sw=4: - require 'pathname' require 'time' require 'etc' @@ -14,7 +13,7 @@ # #--- class Ezmlm::List - # $Id$ + # $Id: list.rb,v a89d91d4b157 2017/06/23 17:54:26 mahlon $ # Valid subdirectories/sections for subscriptions. SUBSCRIPTION_DIRS = %w[ deny mod digest allow ] @@ -824,13 +823,11 @@ ### def with_safety( &block ) home = self.homedir - mode = home.stat.mode - - home.chmod( mode | 01000 ) # enable sticky + home.chmod( home.stat.mode | 01000 ) # enable sticky yield ensure - home.chmod( mode ) + home.chmod( home.stat.mode & ~01000 ) # disable sticky end end # class Ezmlm::List