summaryrefslogtreecommitdiff
path: root/lib/logger.rb
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-11-16 06:59:42 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2016-11-16 06:59:42 +0000
commitf6e77b9d3555c1fbaa8aab1cdc0bd6bde95f62c6 (patch)
treeee8b0387a6749b018945de00aa23673a16c39502 /lib/logger.rb
parent2b80941e95b390c495357b095c804024d64eaa85 (diff)
logger.rb: fix next rotate time
* lib/logger.rb (Logger::LogDevice#initialize): calculate next rotate time based on the mtime of the last existing file. [ruby-dev:49881] [Bug #12948] Author: Tsukasa Oishi <tsukasa.oishi@gmail.com> git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56815 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/logger.rb')
-rw-r--r--lib/logger.rb6
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/logger.rb b/lib/logger.rb
index e0c93c323c..5dc108f567 100644
--- a/lib/logger.rb
+++ b/lib/logger.rb
@@ -673,7 +673,11 @@ private
@shift_age = shift_age || 7
@shift_size = shift_size || 1048576
@shift_period_suffix = shift_period_suffix || '%Y%m%d'
- @next_rotate_time = next_rotate_time(Time.now, @shift_age) unless @shift_age.is_a?(Integer)
+
+ unless @shift_age.is_a?(Integer)
+ base_time = @dev.respond_to?(:stat) ? @dev.stat.mtime : Time.now
+ @next_rotate_time = next_rotate_time(base_time, @shift_age)
+ end
end
end