[Python-checkins] r65900 - python/trunk/Lib/test/test_os.py
hirokazu.yamamoto
python-checkins at python.org
Wed Aug 20 06:13:30 CEST 2008
Author: hirokazu.yamamoto
Date: Wed Aug 20 06:13:28 2008
New Revision: 65900
Log:
fixed get_file_system in test_os.py ('path' is unicode on py3k and ansi on trunk)
Modified:
python/trunk/Lib/test/test_os.py
Modified: python/trunk/Lib/test/test_os.py
==============================================================================
--- python/trunk/Lib/test/test_os.py (original)
+++ python/trunk/Lib/test/test_os.py Wed Aug 20 06:13:28 2008
@@ -294,12 +294,15 @@
# systems support centiseconds
if sys.platform == 'win32':
def get_file_system(path):
- import os
- root = os.path.splitdrive(os.path.realpath("."))[0] + '\\'
+ root = os.path.splitdrive(os.path.abspath(path))[0] + '\\'
import ctypes
- kernel32 = ctypes.windll.kernel32
- buf = ctypes.create_string_buffer("", 100)
- if kernel32.GetVolumeInformationA(root, None, 0, None, None, None, buf, len(buf)):
+ from ctypes.wintypes import LPCWSTR, LPWSTR, DWORD
+ LPDWORD = ctypes.POINTER(DWORD)
+ f = ctypes.windll.kernel32.GetVolumeInformationW
+ f.argtypes = (LPCWSTR, LPWSTR, DWORD,
+ LPDWORD, LPDWORD, LPDWORD, LPWSTR, DWORD)
+ buf = ctypes.create_unicode_buffer("", 100)
+ if f(root, None, 0, None, None, None, buf, len(buf)):
return buf.value
if get_file_system(test_support.TESTFN) == "NTFS":
More information about the Python-checkins
mailing list