From 6831ab5385363cf9990af2d5a45e4b1aa23c4f84 Mon Sep 17 00:00:00 2001 From: Shadowfacts Date: Wed, 18 Dec 2019 21:59:08 -0500 Subject: [PATCH] Pachyderm: Fix request bodies form parameters not being percent-escaped Fixes #65 --- Pachyderm/Request/Parameter.swift | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Pachyderm/Request/Parameter.swift b/Pachyderm/Request/Parameter.swift index 8c03b9a5..3e6350c6 100644 --- a/Pachyderm/Request/Parameter.swift +++ b/Pachyderm/Request/Parameter.swift @@ -67,8 +67,11 @@ extension Parameter: CustomStringConvertible { extension Array where Element == Parameter { var urlEncoded: String { return compactMap { - guard let value = $0.value else { return nil } - return "\($0.name)=\(value)" + guard let value = $0.value, + let escapedValue = value.addingPercentEncoding(withAllowedCharacters: .alphanumerics) else { + return nil + } + return "\($0.name)=\(escapedValue)" }.joined(separator: "&") }