Index: Lib_new/genericpath.py =================================================================== --- Lib_new/genericpath.py (revision 74665) +++ Lib_new/genericpath.py (working copy) @@ -96,8 +96,6 @@ dotIndex = p.rfind(extsep) if dotIndex > sepIndex: - # skip all leading dots - filenameIndex = sepIndex + 1 while filenameIndex < dotIndex: if p[filenameIndex:filenameIndex+1] != extsep: return p[:dotIndex], p[dotIndex:] Index: Lib_new/test/test_genericpath.py =================================================================== --- Lib_new/test/test_genericpath.py (revision 74665) +++ Lib_new/test/test_genericpath.py (working copy) @@ -177,6 +177,19 @@ self.assertRaises(TypeError, genericpath.samefile) + def test_splitext(self): + base, ext = genericpath._splitext("a/.ogg", "/", None, ".") + self.assertEqual(base, "a/") + self.assertEqual(ext, ".ogg") + + base, ext = genericpath._splitext(".ogg", "/", None, ".") + self.assertEqual(base, "") + self.assertEqual(ext, ".ogg") + + base, ext = genericpath._splitext("a/large/good/path.ogg", "/", None, ".") + self.assertEqual(base, "a/large/good/path") + self.assertEqual(ext, ".ogg") + def test_main(): support.run_unittest(AllCommonTest)