Skip to content

Commit

Permalink
Merge pull request gitlabhq#31 from klynch/1x
Browse files Browse the repository at this point in the history
Must ensure that the lock is always removed.
  • Loading branch information
dzaporozhets committed Oct 18, 2011
2 parents ef2bf15 + a39d043 commit 757ea63
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 6 deletions.
2 changes: 1 addition & 1 deletion app/models/project.rb
Expand Up @@ -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
Expand Down
13 changes: 8 additions & 5 deletions lib/gitosis.rb
Expand Up @@ -27,13 +27,16 @@ def push
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
Expand Down

0 comments on commit 757ea63

Please sign in to comment.