mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-15 23:31:37 +00:00
Revert r152915. Chapuni's WinWaitReleased refactoring: It doesn't work for me
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@152958 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
748c1ec713
commit
391c14530b
@ -29,20 +29,12 @@ def RemoveForce(f):
|
||||
except OSError:
|
||||
pass
|
||||
|
||||
def WinWaitReleased(f):
|
||||
import time, win32file
|
||||
def WinRename(f_o, f_n):
|
||||
import time
|
||||
retry_cnt = 256
|
||||
while True:
|
||||
while (True):
|
||||
try:
|
||||
h = win32file.CreateFile(
|
||||
f,
|
||||
0, # Querying, neither GENERIC_READ nor GENERIC_WRITE
|
||||
0, # Exclusive
|
||||
None,
|
||||
win32file.OPEN_EXISTING,
|
||||
win32file.FILE_ATTRIBUTE_NORMAL,
|
||||
None)
|
||||
h.close()
|
||||
os.rename(f_o, f_n)
|
||||
break
|
||||
except WindowsError, (winerror, strerror):
|
||||
retry_cnt = retry_cnt - 1
|
||||
@ -53,6 +45,21 @@ def WinWaitReleased(f):
|
||||
else:
|
||||
raise
|
||||
|
||||
def WinWaitReleased(f):
|
||||
import random
|
||||
t = "%s%06d" % (f, random.randint(0, 999999))
|
||||
RemoveForce(t)
|
||||
try:
|
||||
WinRename(f, t) # rename
|
||||
WinRename(t, f) # restore
|
||||
except WindowsError, (winerror, strerror):
|
||||
if winerror in (2, 3):
|
||||
# 2: ERROR_FILE_NOT_FOUND
|
||||
# 3: ERROR_PATH_NOT_FOUND
|
||||
pass
|
||||
else:
|
||||
raise
|
||||
|
||||
def executeCommand(command, cwd=None, env=None):
|
||||
p = subprocess.Popen(command, cwd=cwd,
|
||||
stdin=subprocess.PIPE,
|
||||
|
Loading…
x
Reference in New Issue
Block a user