diff options
author | sonots <sonots@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-11-20 14:16:56 +0000 |
---|---|---|
committer | sonots <sonots@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-11-20 14:16:56 +0000 |
commit | 569c86d1389aaab51bfb26eff1686b14215dc398 (patch) | |
tree | c0c5bb0e2ee2a38e0e059543409cddcb7a8e2bb9 | |
parent | c65ae7611f082be4115edc2f4cd3795f51d00159 (diff) | |
download | ruby-569c86d1389aaab51bfb26eff1686b14215dc398.tar.gz |
* lib/logger.rb: expose logger mutex
[fix GH-541] Patch by @arthurnn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52685 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | lib/logger.rb | 13 |
2 files changed, 10 insertions, 8 deletions
@@ -1,3 +1,8 @@ +Fri Nov 20 23:15:18 2015 Naotoshi Seo <sonots@gmail.com> + + * lib/logger.rb: expose logger mutex + [fix GH-541] Patch by @arthurnn + Fri Nov 20 15:05:28 2015 SHIBATA Hiroshi <hsbt@ruby-lang.org> * Added missing reference of GitHub diff --git a/lib/logger.rb b/lib/logger.rb index d17896f841..77b08fe204 100644 --- a/lib/logger.rb +++ b/lib/logger.rb @@ -626,14 +626,11 @@ private attr_reader :dev attr_reader :filename - - class LogDeviceMutex - include MonitorMixin - end + include MonitorMixin def initialize(log = nil, opt = {}) @dev = @filename = @shift_age = @shift_size = nil - @mutex = LogDeviceMutex.new + mon_initialize set_dev(log) if @filename @shift_age = opt[:shift_age] || 7 @@ -644,7 +641,7 @@ private def write(message) begin - @mutex.synchronize do + synchronize do if @shift_age and @dev.respond_to?(:stat) begin check_shift_log @@ -665,7 +662,7 @@ private def close begin - @mutex.synchronize do + synchronize do @dev.close rescue nil end rescue Exception @@ -677,7 +674,7 @@ private # reopen the same filename if no argument, do nothing for IO log ||= @filename if @filename if log - @mutex.synchronize do + synchronize do if @filename and @dev @dev.close rescue nil # close only file opened by Logger @filename = nil |