Commit cd769b9
Additional fixes for UTF-8 surrogate escapes (#629)
* Fixes non UTF-8 surrogateescapes
Surrogate escapes in Unicode (non UTF-8 encoding) will be properly escaped with backslashes when encountered, versus breaking the transport layer.
* Removes erroneous bytes decode and reraises
Fixes to re-raise exceptions with different reasons
Removes erroneous bytes decode where bytes are desired
* Adds test for surrogate escapes in body
Tests that a surrogate escape sequence is properly escaped
with backslashes to produce valid UTF-8.
* Use proper byte sequence for surrogate
* Use if/else versus pass
* Proper Unicode surrogate escape
Use a Unicode Surrogate that properly escapes in both Python2 and Python3
* Passing test once surrogatepass is used
Updating test to pass once surrogatepass is used
* Use surrogatepass instead of backslashreplace
This replicates behavior between Python 2 and Python 3
* Fixes whitespace
* Simplifies with no exception block
Since `surrogatepass` will only ever explicitly occur when there are surrogate bytes encountered, there is no need to let the error throw and catch it, also uses single-quotes for consistency.
* Fixes Unicode Surrogate Escapes in request logging
This is the same fix as accepted for ElasticSearch requests, except applied to the request logging mechanisms.1 parent 843ce9e commit cd769b9
1 file changed
+2
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
76 | 76 | | |
77 | 77 | | |
78 | 78 | | |
79 | | - | |
| 79 | + | |
80 | 80 | | |
81 | 81 | | |
82 | 82 | | |
| |||
100 | 100 | | |
101 | 101 | | |
102 | 102 | | |
103 | | - | |
| 103 | + | |
104 | 104 | | |
105 | 105 | | |
106 | 106 | | |
| |||
0 commit comments