| Index: lib/src/percent/encoder.dart
|
| diff --git a/lib/src/percent/encoder.dart b/lib/src/percent/encoder.dart
|
| index c7817609e81c8adc762619d3d7ebd253d4ae7daa..9d05c21c582a5741a823683b8cb03c3d106504f8 100644
|
| --- a/lib/src/percent/encoder.dart
|
| +++ b/lib/src/percent/encoder.dart
|
| @@ -66,7 +66,12 @@ String _convert(List<int> bytes, int start, int end) {
|
| // exactly `0b100000 = 0x20` less than lowercase letters, so if we ensure
|
| // that that bit is 1 we ensure that the letter is lowercase.
|
| var letter = 0x20 | byte;
|
| + // If the byte is a digit, convert it to its value. All other byte values
|
| + // are converted to a value greater than 9.
|
| + // Negative values are detected elsewhere.
|
| + var digit = 0x30 ^ byte;
|
| if ((letter >= $a && letter <= $z) ||
|
| + digit <= 9 ||
|
| byte == $dash ||
|
| byte == $dot ||
|
| byte == $underscore ||
|
|
|