diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/cgi.rb | 9 | ||||
-rw-r--r-- | lib/thread.rb | 11 |
2 files changed, 9 insertions, 11 deletions
diff --git a/lib/cgi.rb b/lib/cgi.rb index 460a8b8868..17bbdbeab9 100644 --- a/lib/cgi.rb +++ b/lib/cgi.rb @@ -1547,14 +1547,9 @@ class CGI body = "" end if @output_hidden - hidden = @output_hidden.collect{|k,v| - "<INPUT TYPE=HIDDEN NAME=\"#{k}\" VALUE=\"#{v}\">" + body += @output_hidden.collect{|k,v| + "<INPUT TYPE=\"HIDDEN\" NAME=\"#{k}\" VALUE=\"#{v}\">" }.to_s - if defined? fieldset - body += fieldset{ hidden } - else - body += hidden - end end super(attributes){body} end diff --git a/lib/thread.rb b/lib/thread.rb index 3baa951522..8b27356c48 100644 --- a/lib/thread.rb +++ b/lib/thread.rb @@ -189,11 +189,14 @@ class ConditionVariable # Releases the lock held in +mutex+ and waits; reacquires the lock on wakeup. # def wait(mutex) - mutex.exclusive_unlock do - @waiters.push(Thread.current) - Thread.stop + begin + mutex.exclusive_unlock do + @waiters.push(Thread.current) + Thread.stop + end + ensure + mutex.lock end - mutex.lock end # |