diff --git a/lib/jekyll/convertible.rb b/lib/jekyll/convertible.rb index b423ac43..8e9700b2 100644 --- a/lib/jekyll/convertible.rb +++ b/lib/jekyll/convertible.rb @@ -43,7 +43,7 @@ module Jekyll # Returns nothing. def read_yaml(base, name, opts = {}) begin - self.content = File.read(File.join(base, name), + self.content = File.read(Jekyll.sanitized_path(base, name), merged_file_read_opts(opts)) if content =~ /\A(---\s*\n.*?\n?)^((---|\.\.\.)\s*$\n?)/m self.content = $POSTMATCH diff --git a/lib/jekyll/site.rb b/lib/jekyll/site.rb index eaa76aad..1015d5d9 100644 --- a/lib/jekyll/site.rb +++ b/lib/jekyll/site.rb @@ -195,7 +195,7 @@ module Jekyll # # Returns nothing def read_data(dir) - base = File.join(source, dir) + base = Jekyll.sanitized_path(source, dir) read_data_to(base, self.data) end @@ -214,7 +214,7 @@ module Jekyll end entries.each do |entry| - path = File.join(dir, entry) + path = Jekyll.sanitized_path(dir, entry) next if File.symlink?(path) && safe key = sanitize_filename(File.basename(entry, '.*'))