diff options
Diffstat (limited to 'lib/gorg/cache.rb')
-rw-r--r-- | lib/gorg/cache.rb | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/lib/gorg/cache.rb b/lib/gorg/cache.rb index 543b6a2..3229e35 100644 --- a/lib/gorg/cache.rb +++ b/lib/gorg/cache.rb @@ -22,7 +22,13 @@ # . a list of parameters as received by a webserver e.g. # . a list of files it depends on -require "parsedate" +begin + require "parsedate" + $haveparsedate = true +rescue LoadError + require "time" + $haveparsedate = false +end require "fileutils" require "find" require "digest" @@ -106,7 +112,11 @@ module Cache fst = File.stat(f) raise "Size of #{f} has changed from #{fst.size} to #{s.to_i}" unless fst.size == s.to_i - raise "Timestamp of #{f} has changed" unless Time.utc(*ParseDate.parsedate(d)) == fst.mtime.utc + if $haveparsedate + raise "Timestamp of #{f} has changed" unless Time.utc(*ParseDate.parsedate(d)) == fst.mtime.utc + else + raise "Timestamp of #{f} has changed" unless Time.parse(d) == fst.mtime.utc + end end mline = meta.shift end |