Преглед изворни кода

[Issue #206] Replacing stringByAddingPercentEncodingWithAllowedCharacters with CFURLCreateStringByAddingPercentEscapes to prevent out-of-memory exception

Mattt Thompson пре 11 година
родитељ
комит
28df82ec9c
1 измењених фајлова са 2 додато и 2 уклоњено
  1. 2 2
      Source/Alamofire.swift

+ 2 - 2
Source/Alamofire.swift

@@ -152,8 +152,8 @@ public enum ParameterEncoding {
     }
 
     func escape(string: String) -> String {
-        let allowedCharacters =  NSCharacterSet(charactersInString:" =\"#%/<>?@\\^`{}[]|&+").invertedSet
-        return string.stringByAddingPercentEncodingWithAllowedCharacters(allowedCharacters) ?? string
+        let legalURLCharactersToBeEscaped: CFStringRef = ":/?&=;+!@#$()',*"
+        return CFURLCreateStringByAddingPercentEscapes(nil, string, nil, legalURLCharactersToBeEscaped, CFStringBuiltInEncodings.UTF8.rawValue)
     }
 }