Encode the + in Feedly collection URIs. Fixes #2443.

This commit is contained in:
Kiel Gillard 🤪 2020-10-05 22:12:45 +11:00
parent 35cc5c01db
commit 22e7a0edbb
1 changed files with 6 additions and 1 deletions

View File

@ -48,10 +48,15 @@ final class FeedlyAPICaller {
private let transport: Transport private let transport: Transport
private let baseUrlComponents: URLComponents private let baseUrlComponents: URLComponents
private let uriComponentAllowed: CharacterSet
init(transport: Transport, api: API) { init(transport: Transport, api: API) {
self.transport = transport self.transport = transport
self.baseUrlComponents = api.baseUrlComponents self.baseUrlComponents = api.baseUrlComponents
var urlHostAllowed = CharacterSet.urlHostAllowed
urlHostAllowed.remove("+")
uriComponentAllowed = urlHostAllowed
} }
weak var delegate: FeedlyAPICallerDelegate? weak var delegate: FeedlyAPICallerDelegate?
@ -272,7 +277,7 @@ final class FeedlyAPICaller {
} }
private func encodeForURLPath(_ pathComponent: String) -> String? { private func encodeForURLPath(_ pathComponent: String) -> String? {
return pathComponent.addingPercentEncoding(withAllowedCharacters: .urlHostAllowed) return pathComponent.addingPercentEncoding(withAllowedCharacters: uriComponentAllowed)
} }
func deleteCollection(with id: String, completion: @escaping (Result<Void, Error>) -> ()) { func deleteCollection(with id: String, completion: @escaping (Result<Void, Error>) -> ()) {