Hirokazu Yamamoto <[EMAIL PROTECTED]> added the comment: Or, if PyArg_ParseTuple overflowed or GetFullPathNameA failed, (not check GetLastError() because it's vogus) try GetFullPathNameW like attached file "quick_hack_for_getfullpathname.patch".
This inverses flow if (unicode_file_names()) { /* unicode */ } /* ascii */ # Maybe it would be nice if convert_to_unicode() functionality is built in PyArg_ParseTuple. (inverse of "et") Be care, this is quick hack, so maybe buggy. I confirmed test_os and test_ntpath passed though. ///////////////////////////////////////////////////// import unittest import ntpath import os class TestCase(unittest.TestCase): def test_getfullpathname(self): for c in ('x', u'x'): for count in xrange(1, 1000): name = c * count path = ntpath._getfullpathname(name) self.assertEqual(os.path.basename(path), name) if __name__ == '__main__': unittest.main() Added file: http://bugs.python.org/file11757/quick_hack_for_getfullpathname.patch _______________________________________ Python tracker <[EMAIL PROTECTED]> <http://bugs.python.org/issue4071> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com