From a5a6900948ed94e3968c8a043fcdda31a55af1e8 Mon Sep 17 00:00:00 2001 From: stereobooster Date: Mon, 16 Jul 2012 12:15:32 +0300 Subject: [PATCH] fix error for case with broken encoding --- lib/jekyll/convertible.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/jekyll/convertible.rb b/lib/jekyll/convertible.rb index f6244d62..dab0545c 100644 --- a/lib/jekyll/convertible.rb +++ b/lib/jekyll/convertible.rb @@ -25,14 +25,16 @@ module Jekyll # # Returns nothing. def read_yaml(base, name) - self.content = File.read(File.join(base, name)) - begin + self.content = File.read(File.join(base, name)) + if self.content =~ /\A(---\s*\n.*?\n?)^(---\s*$\n?)/m self.content = $POSTMATCH self.data = YAML.load($1) end - rescue Exception => e + rescue => e + puts "Error reading file #{name}: #{e.message}" + rescue SyntaxError => e puts "YAML Exception reading #{name}: #{e.message}" end