Skip to content

Commit df6175b

Browse files
committed
Windows fix for long path issue
1 parent caea162 commit df6175b

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

Diff for: src/tribler-core/tribler_core/tests/tools/test_as_server.py

+10-2
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
import re
1212
import shutil
1313
import string
14+
import sys
1415
import time
1516
from asyncio import Future, current_task, get_event_loop
1617
from functools import partial
@@ -66,8 +67,15 @@ def check(*argv, **kwargs):
6667
def tearDown(self):
6768
while self._tempdirs:
6869
temp_dir = self._tempdirs.pop()
69-
os.chmod(temp_dir, 0o700)
70-
shutil.rmtree(temp_dir, ignore_errors=False)
70+
self.remove_directory(temp_dir, ignore_errors=False)
71+
72+
def remove_directory(self, directory, ignore_errors=False):
73+
os.chmod(directory, 0o700)
74+
if sys.platform == 'win32':
75+
# Add the magic prefix \\?\ to work around long path issue
76+
shutil.rmtree("\\\\?\\" + str(directory), ignore_errors=ignore_errors)
77+
else:
78+
shutil.rmtree(directory, ignore_errors=ignore_errors)
7179

7280
def temporary_directory(self, suffix='', exist_ok=False):
7381
random_string = ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(6))

0 commit comments

Comments
 (0)