Commit 757ea634 authored by Dmitriy Zaporozhets's avatar Dmitriy Zaporozhets

Merge pull request #31 from klynch/1x

Must ensure that the lock is always removed.
parents ef2bf152 a39d0431
...@@ -28,7 +28,7 @@ class Project < ActiveRecord::Base ...@@ -28,7 +28,7 @@ class Project < ActiveRecord::Base
:uniqueness => true, :uniqueness => true,
:format => { :with => /^[a-zA-Z0-9_\-]*$/, :format => { :with => /^[a-zA-Z0-9_\-]*$/,
:message => "only letters, digits & '_' '-' allowed" }, :message => "only letters, digits & '_' '-' allowed" },
:length => { :within => 3..16 } :length => { :within => 3..255 }
validates :owner, validates :owner,
:presence => true :presence => true
......
...@@ -27,13 +27,16 @@ class Gitosis ...@@ -27,13 +27,16 @@ class Gitosis
def configure def configure
status = Timeout::timeout(20) do status = Timeout::timeout(20) do
File.open(File.join(Dir.tmpdir,"gitlabhq-gitosis.lock"), "w+") do |f| File.open(File.join(Dir.tmpdir,"gitlabhq-gitosis.lock"), "w+") do |f|
f.flock(File::LOCK_EX) begin
f.flock(File::LOCK_EX)
pull pull
yield(self) yield(self)
push push
f.flock(File::LOCK_UN) ensure
f.flock(File::LOCK_UN)
end
end end
end end
rescue Exception => ex rescue Exception => ex
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment