From 5a85d177c2e4a8bee708bd94f4a69c77fa7bcd0a Mon Sep 17 00:00:00 2001 From: Thomas Reynolds Date: Fri, 29 Aug 2014 10:24:45 -0700 Subject: [PATCH] Catch File read exceptions in frontmatter --- .../lib/middleman-core/core_extensions/front_matter.rb | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/middleman-core/lib/middleman-core/core_extensions/front_matter.rb b/middleman-core/lib/middleman-core/core_extensions/front_matter.rb index ac683db7..da5897f7 100644 --- a/middleman-core/lib/middleman-core/core_extensions/front_matter.rb +++ b/middleman-core/lib/middleman-core/core_extensions/front_matter.rb @@ -176,7 +176,14 @@ module Middleman::CoreExtensions return [data, nil] if !app.files.exists?(full_path) || ::Middleman::Util.binary?(full_path) - content = File.read(full_path) + # Avoid weird race condition when a file is renamed. + content = begin + File.read(full_path) + rescue ::EOFError + rescue ::IOError + rescue ::Errno::ENOENT + "" + end begin if content =~ /\A.*coding:/