summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Dower <steve.dower@microsoft.com>2016-12-29 00:02:59 (GMT)
committerSteve Dower <steve.dower@microsoft.com>2016-12-29 00:02:59 (GMT)
commit4b1e98b0af68ee80a37618ad599ead194f179cf1 (patch)
tree8aafb341f8ec39e970d0a9b3ef13d817d97a60a4
parent40619399bd4798d9edb50fe80afe8eff3197d51d (diff)
downloadcpython-4b1e98b0af68ee80a37618ad599ead194f179cf1.zip
cpython-4b1e98b0af68ee80a37618ad599ead194f179cf1.tar.gz
cpython-4b1e98b0af68ee80a37618ad599ead194f179cf1.tar.bz2
Issue #29079: Prevent infinite loop in pathlib.resolve() on Windows
-rw-r--r--Lib/pathlib.py4
-rw-r--r--Misc/NEWS2
2 files changed, 5 insertions, 1 deletions
diff --git a/Lib/pathlib.py b/Lib/pathlib.py
index 6965393..0484dac 100644
--- a/Lib/pathlib.py
+++ b/Lib/pathlib.py
@@ -192,7 +192,9 @@ class _WindowsFlavour(_Flavour):
s = self._ext_to_normal(_getfinalpathname(s))
except FileNotFoundError:
previous_s = s
- s = os.path.abspath(os.path.join(s, os.pardir))
+ s = os.path.dirname(s)
+ if previous_s == s:
+ return path
else:
if previous_s is None:
return s
diff --git a/Misc/NEWS b/Misc/NEWS
index 176b1e9..1112257 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -40,6 +40,8 @@ Core and Builtins
Library
-------
+- Issue #29079: Prevent infinite loop in pathlib.resolve() on Windows
+
- Issue #13051: Fixed recursion errors in large or resized
curses.textpad.Textbox. Based on patch by Tycho Andersen.