makedirs(), removedirs(): If the tail of the path is empty, do a second
split so the logic does not fail in corner cases.
This closes bug #407.
diff --git a/Lib/os.py b/Lib/os.py
index 8e1e4f0..59c3895 100644
--- a/Lib/os.py
+++ b/Lib/os.py
@@ -126,6 +126,8 @@
"""
head, tail = path.split(name)
+ if not tail:
+ head, tail = path.split(head)
if head and tail and not path.exists(head):
makedirs(head, mode)
mkdir(name, mode)
@@ -143,6 +145,8 @@
"""
rmdir(name)
head, tail = path.split(name)
+ if not tail:
+ head, tail = path.split(head)
while head and tail:
try:
rmdir(head)