Escape valid special chars in a site's path name (#7568)
Merge pull request 7568
This commit is contained in:
parent
e451acca6a
commit
907477b9ca
|
@ -5,6 +5,19 @@ Feature: Rendering
|
|||
But I want to make it as simply as possible
|
||||
So render with Liquid and place in Layouts
|
||||
|
||||
Scenario: Rendering a site with parentheses in its path name
|
||||
Given I have a blank site in "omega(beta)"
|
||||
And I have an "omega(beta)/test.md" page with layout "simple" that contains "Hello World"
|
||||
And I have an omega(beta)/_includes directory
|
||||
And I have an "omega(beta)/_includes/head.html" file that contains "Snippet"
|
||||
And I have a configuration file with "source" set to "omega(beta)"
|
||||
And I have an omega(beta)/_layouts directory
|
||||
And I have an "omega(beta)/_layouts/simple.html" file that contains "{% include head.html %}: {{ content }}"
|
||||
When I run jekyll build --profile
|
||||
Then I should get a zero exit status
|
||||
And I should see "Snippet: <p>Hello World</p>" in "_site/test.html"
|
||||
And I should see "_layouts/simple.html" in the build output
|
||||
|
||||
Scenario: When receiving bad Liquid
|
||||
Given I have a "index.html" page with layout "simple" that contains "{% include invalid.html %}"
|
||||
And I have a simple layout that contains "{{ content }}"
|
||||
|
|
|
@ -65,7 +65,9 @@ module Jekyll
|
|||
private
|
||||
|
||||
def filename_regex
|
||||
@filename_regex ||= %r!\A(#{source_dir}/|#{theme_dir}/|/*)(.*)!i
|
||||
@filename_regex ||= begin
|
||||
%r!\A(#{Regexp.escape(source_dir)}/|#{Regexp.escape(theme_dir.to_s)}/|/*)(.*)!i
|
||||
end
|
||||
end
|
||||
|
||||
def new_profile_hash
|
||||
|
|
Loading…
Reference in New Issue