Index: Lib/test/test_posixpath.py =================================================================== --- Lib/test/test_posixpath.py (revision 70217) +++ Lib/test/test_posixpath.py (working copy) @@ -345,6 +345,11 @@ self.assert_(isinstance(posixpath.expanduser("~root/"), basestring)) self.assert_(isinstance(posixpath.expanduser("~foo/"), basestring)) + orig_home = os.environ['HOME'] + os.environ['HOME'] = '/' + self.assertEqual(posixpath.expanduser("~"), "/") + os.environ['HOME'] = orig_home + self.assertRaises(TypeError, posixpath.expanduser) def test_expandvars(self): Index: Lib/posixpath.py =================================================================== --- Lib/posixpath.py (revision 70217) +++ Lib/posixpath.py (working copy) @@ -262,7 +262,7 @@ except KeyError: return path userhome = pwent.pw_dir - userhome = userhome.rstrip('/') + userhome = userhome.rstrip('/') or userhome return userhome + path[i:]