mirror of
https://github.com/clinton-hall/nzbToMedia.git
synced 2025-08-20 13:23:18 -07:00
Update vendored windows libs
This commit is contained in:
parent
f61c211655
commit
b1cefa94e5
226 changed files with 33472 additions and 11882 deletions
29
libs/win/bugs/vista-symlink-islink-bug.py
Normal file
29
libs/win/bugs/vista-symlink-islink-bug.py
Normal file
|
@ -0,0 +1,29 @@
|
|||
import os
|
||||
import sys
|
||||
|
||||
try:
|
||||
from jaraco.windows.filesystem import symlink
|
||||
except ImportError:
|
||||
# a dirty reimplementation of symlink from jaraco.windows
|
||||
from ctypes import windll
|
||||
from ctypes.wintypes import LPWSTR, DWORD, BOOLEAN
|
||||
|
||||
CreateSymbolicLink = windll.kernel32.CreateSymbolicLinkW
|
||||
CreateSymbolicLink.argtypes = (LPWSTR, LPWSTR, DWORD)
|
||||
CreateSymbolicLink.restype = BOOLEAN
|
||||
|
||||
def symlink(link, target, target_is_directory=False):
|
||||
"""
|
||||
An implementation of os.symlink for Windows (Vista and greater)
|
||||
"""
|
||||
target_is_directory = target_is_directory or os.path.isdir(target)
|
||||
CreateSymbolicLink(link, target, target_is_directory)
|
||||
|
||||
|
||||
assert sys.platform in ('win32',)
|
||||
os.makedirs(r'.\foo')
|
||||
assert os.path.isdir(r'.\foo')
|
||||
|
||||
symlink(r'.\foo_sym', r'.\foo')
|
||||
assert os.path.isdir(r'.\foo_sym')
|
||||
assert os.path.islink(r'.\foo_sym') # fails
|
Loading…
Add table
Add a link
Reference in a new issue