Merge pull request #31 from klynch/1x

Must ensure that the lock is always removed.
This commit is contained in:
Dmitriy Zaporozhets 2011-10-18 01:17:52 -07:00
commit 757ea63466
2 changed files with 9 additions and 6 deletions

View file

@ -28,7 +28,7 @@ class Project < ActiveRecord::Base
:uniqueness => true,
:format => { :with => /^[a-zA-Z0-9_\-]*$/,
:message => "only letters, digits & '_' '-' allowed" },
:length => { :within => 3..16 }
:length => { :within => 3..255 }
validates :owner,
:presence => true

View file

@ -27,13 +27,16 @@ class Gitosis
def configure
status = Timeout::timeout(20) do
File.open(File.join(Dir.tmpdir,"gitlabhq-gitosis.lock"), "w+") do |f|
f.flock(File::LOCK_EX)
begin
f.flock(File::LOCK_EX)
pull
yield(self)
push
pull
yield(self)
push
f.flock(File::LOCK_UN)
ensure
f.flock(File::LOCK_UN)
end
end
end
rescue Exception => ex