mirror of
https://github.com/python/cpython.git
synced 2025-08-31 14:07:50 +00:00
Avoid unwanted behavior change in shlex.quote (see #9723).
I simplified the quote code to use a regex instead of a loop+test when I moved pipes.quote to shlex in 5966eeb0457d; Ezio Melotti pointed out that my regex contained redundant parts (now removed) and allowed non-ASCII characters (now disallowed). I think common UNIX shells don’t quote non-ASCII characters, but there’s no harm in doing so. We’ll see if users request a change.
This commit is contained in:
commit
7fc0394a12
2 changed files with 3 additions and 2 deletions
|
@ -176,7 +176,8 @@ class ShlexTest(unittest.TestCase):
|
|||
|
||||
def testQuote(self):
|
||||
safeunquoted = string.ascii_letters + string.digits + '@%_-+=:,./'
|
||||
unsafe = '"`$\\!'
|
||||
unicode_sample = '\xe9\xe0\xdf' # e + acute accent, a + grave, sharp s
|
||||
unsafe = '"`$\\!' + unicode_sample
|
||||
|
||||
self.assertEqual(shlex.quote(''), "''")
|
||||
self.assertEqual(shlex.quote(safeunquoted), safeunquoted)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue