diff options
-rw-r--r-- | oauthlib/oauth1/rfc5849/utils.py | 2 | ||||
-rw-r--r-- | tests/oauth1/rfc5849/test_utils.py | 7 |
2 files changed, 5 insertions, 4 deletions
diff --git a/oauthlib/oauth1/rfc5849/utils.py b/oauthlib/oauth1/rfc5849/utils.py index 65f286d..e38807a 100644 --- a/oauthlib/oauth1/rfc5849/utils.py +++ b/oauthlib/oauth1/rfc5849/utils.py @@ -182,7 +182,7 @@ def urldecode(query): # correct = %00, %A0, %0A, %FF # invalid = %G0, %5H, %PO import re - first_invalid = u'%[^0-9A-Fa-f][0-9A-Fa-f]' + first_invalid = u'%[^0-9A-Fa-f]' last_invalid = '%[0-9A-Fa-f][^0-9A-Fa-f]' both_invalid = u'%[^0-9A-Fa-f][^0-9A-Fa-f]' invalid_hex = u'|'.join((first_invalid, last_invalid, both_invalid)) diff --git a/tests/oauth1/rfc5849/test_utils.py b/tests/oauth1/rfc5849/test_utils.py index 901bcb9..a460d7b 100644 --- a/tests/oauth1/rfc5849/test_utils.py +++ b/tests/oauth1/rfc5849/test_utils.py @@ -143,9 +143,10 @@ class UtilsTests(TestCase): self.assertRaises(ValueError, urldecode, u'foo bar') self.assertRaises(ValueError, urldecode, u'?') - self.assertRaises(ValueError, urldecode, u'%?A') - self.assertRaises(ValueError, urldecode, u'%A?') - self.assertRaises(ValueError, urldecode, u'%??') + self.assertRaises(ValueError, urldecode, u'%R') + self.assertRaises(ValueError, urldecode, u'%RA') + self.assertRaises(ValueError, urldecode, u'%AR') + self.assertRaises(ValueError, urldecode, u'%RR') def test_parse_authorization_header(self): |