Commit 1b87ae0c authored by Serhiy Storchaka's avatar Serhiy Storchaka

Issue #23742: ntpath.expandvars() no longer loses unbalanced single quotes.

parent 81f241ab
...@@ -400,7 +400,7 @@ def expandvars(path): ...@@ -400,7 +400,7 @@ def expandvars(path):
index = path.index(c) index = path.index(c)
res += c + path[:index + 1] res += c + path[:index + 1]
except ValueError: except ValueError:
res += path res += c + path
index = pathlen - 1 index = pathlen - 1
elif c == percent: # variable or '%' elif c == percent: # variable or '%'
if path[index + 1:index + 2] == percent: if path[index + 1:index + 2] == percent:
......
...@@ -237,6 +237,7 @@ class TestNtpath(unittest.TestCase): ...@@ -237,6 +237,7 @@ class TestNtpath(unittest.TestCase):
tester('ntpath.expandvars("%?bar%")', "%?bar%") tester('ntpath.expandvars("%?bar%")', "%?bar%")
tester('ntpath.expandvars("%foo%%bar")', "bar%bar") tester('ntpath.expandvars("%foo%%bar")', "bar%bar")
tester('ntpath.expandvars("\'%foo%\'%bar")', "\'%foo%\'%bar") tester('ntpath.expandvars("\'%foo%\'%bar")', "\'%foo%\'%bar")
tester('ntpath.expandvars("bar\'%foo%")', "bar\'%foo%")
@unittest.skipUnless(support.FS_NONASCII, 'need support.FS_NONASCII') @unittest.skipUnless(support.FS_NONASCII, 'need support.FS_NONASCII')
def test_expandvars_nonascii(self): def test_expandvars_nonascii(self):
......
...@@ -18,6 +18,8 @@ Core and Builtins ...@@ -18,6 +18,8 @@ Core and Builtins
Library Library
------- -------
- Issue #23742: ntpath.expandvars() no longer loses unbalanced single quotes.
- Issue #21802: The reader in BufferedRWPair now is closed even when closing - Issue #21802: The reader in BufferedRWPair now is closed even when closing
writer failed in BufferedRWPair.close(). writer failed in BufferedRWPair.close().
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment