Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 6ab97e9

Browse files
committed
Filename validation tweak
1 parent 53541da commit 6ab97e9

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

‎app/models/wiki_file.rb‎

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,12 @@ def self.find_by_file_name(file_name)
1515
def validate
1616
if file_name
1717
if ! WikiFile.is_valid?(file_name)
18-
errors.add("file_name", "is invalid. Only latin characters, digits, dots, underscores, " +
18+
if ['.', '..'].include? file_name
19+
errors.add("file_name", "cannot be '.' or '..'")
20+
else
21+
errors.add("file_name", "is invalid. Only latin characters, digits, dots, underscores, " +
1922
"dashes and spaces are accepted")
20-
elsif file_name == '.' or file_name == '..'
21-
errors.add("file_name", "cannot be '.' or '..'")
23+
end
2224
end
2325
end
2426

@@ -60,7 +62,7 @@ def delete_content_file
6062

6163
SANE_FILE_NAME = /^[a-zA-Z0-9\-_\. ]*$/
6264
def self.is_valid?(name)
63-
name =~ SANE_FILE_NAME
65+
name =~ SANE_FILE_NAMEand not ['.','..'].include?name
6466
end
6567

6668
end

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /