diff --git a/lib/rscons/cache.rb b/lib/rscons/cache.rb index dc94a7f..f927fae 100644 --- a/lib/rscons/cache.rb +++ b/lib/rscons/cache.rb @@ -61,6 +61,10 @@ module Rscons # file. def initialize @cache = YAML.load(File.read(CACHE_FILE)) rescue {} + unless @cache.is_a?(Hash) + $stderr.puts "Warning: #{CACHE_FILE} was corrupt. Contents:\n#{@cache.inspect}" + @cache = {} + end @cache[:targets] ||= {} @cache[:directories] ||= {} @cache[:version] ||= VERSION