Skip to content

Commit 84a7f6f

Browse files
authored
Merge pull request #39 from henrikblomkvist/master
Ensure only hexadecimal percent codes are decoded
2 parents 7c1b8b5 + 19d6a11 commit 84a7f6f

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

src/ring/util/codec.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
(percent-decode encoded "UTF-8"))
5757
([^String encoded ^String encoding]
5858
(str/replace encoded
59-
#"(?:%[A-Za-z0-9]{2})+"
59+
#"(?:%[A-Fa-f0-9]{2})+"
6060
(fn [chars]
6161
(-> (parse-bytes chars)
6262
(String. encoding)

test/ring/util/test/codec.clj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
(is (= (percent-encode "foo") "%66%6F%6F")))
1010

1111
(deftest test-percent-decode
12-
(is (= (percent-decode "%s/") "%s/"))
12+
(is (= (percent-decode "%s4/") "%s4/"))
1313
(is (= (percent-decode "%20") " "))
1414
(is (= (percent-decode "foo%20bar") "foo bar"))
1515
(is (= (percent-decode "foo%FE%FF%00%2Fbar" "UTF-16") "foo/bar"))

0 commit comments

Comments
 (0)