From 0c4f46180ea4b8c3ab88fa562ea60bf40513810b Mon Sep 17 00:00:00 2001 From: LmeSzinc <37934724+LmeSzinc@users.noreply.github.com> Date: Sat, 28 Mar 2026 18:17:42 +0800 Subject: [PATCH] Fix: [ALAS] Skip permission errors when replacing adb --- deploy/Windows/emulator.py | 11 +++++++---- deploy/emulator.py | 21 ++++++++++++--------- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/deploy/Windows/emulator.py b/deploy/Windows/emulator.py index 3dfc74f15..11def046a 100644 --- a/deploy/Windows/emulator.py +++ b/deploy/Windows/emulator.py @@ -142,10 +142,13 @@ class EmulatorManager(AlasManager): for adb in replace: logger.info(f'Replacing {adb}') bak = self.adb_path_to_backup(adb, new_backup=True) - logger.info(f'{adb} -----> {bak}') - shutil.move(adb, bak) - logger.info(f'{self.adb} -----> {adb}') - shutil.copy(self.adb, adb) + try: + logger.info(f'{adb} -----> {bak}') + shutil.move(adb, bak) + logger.info(f'{self.adb} -----> {adb}') + shutil.copy(self.adb, adb) + except OSError as e: + logger.warning(f'Failed to replace {adb}, {e}') def adb_recover(self): """ diff --git a/deploy/emulator.py b/deploy/emulator.py index 2ccbd4ec4..b16069d1b 100644 --- a/deploy/emulator.py +++ b/deploy/emulator.py @@ -137,16 +137,19 @@ class VirtualBoxEmulator: """ for ori, bak in zip(self.adb_binary, self.adb_backup): logger.info(f'Replacing {ori}') - if os.path.exists(ori): - if filecmp.cmp(adb, ori, shallow=True): - logger.info(f'{adb} is same as {ori}, skip') + try: + if os.path.exists(ori): + if filecmp.cmp(adb, ori, shallow=True): + logger.info(f'{adb} is same as {ori}, skip') + else: + logger.info(f'{ori} -----> {bak}') + shutil.move(ori, bak) + logger.info(f'{adb} -----> {ori}') + shutil.copy(adb, ori) else: - logger.info(f'{ori} -----> {bak}') - shutil.move(ori, bak) - logger.info(f'{adb} -----> {ori}') - shutil.copy(adb, ori) - else: - logger.info(f'{ori} not exists, skip') + logger.info(f'{ori} not exists, skip') + except OSError as e: + logger.warning(f'Failed to replace {ori}, {e}') def adb_recover(self): """ Revert adb replacement """