From 3236a4090ca51265908ba63dabb43d9c3644a29a Mon Sep 17 00:00:00 2001 From: loathingKernel <142770+loathingKernel@users.noreply.github.com> Date: Wed, 15 Mar 2023 21:20:52 +0200 Subject: [PATCH] RareGame: don't delete `.egstore` if the game is a DLC VerifyWorker: use RareGame property to apply the verification check to any DLCs --- rare/models/game.py | 3 ++- rare/shared/rare_core.py | 1 - rare/shared/workers/verify.py | 1 + 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/rare/models/game.py b/rare/models/game.py index f006fa85..571949f0 100644 --- a/rare/models/game.py +++ b/rare/models/game.py @@ -161,7 +161,8 @@ class RareGame(RareGameSlim): def update_igame(self): self.igame = self.core.get_installed_game(self.app_name) if self.igame is not None: - self.core.egstore_delete(self.igame) + if not self.is_dlc: + self.core.egstore_delete(self.igame) self.core.egstore_write(self.igame.app_name) def store_igame(self): diff --git a/rare/shared/rare_core.py b/rare/shared/rare_core.py index e1abf1f5..a54313bf 100644 --- a/rare/shared/rare_core.py +++ b/rare/shared/rare_core.py @@ -247,7 +247,6 @@ class RareCore(QObject): rgame = RareGame(self.__core, self.__image_manager, game) return rgame - def __add_games_and_dlcs(self, games: List[Game], dlcs_dict: Dict[str, List]) -> None: length = len(games) for idx, game in enumerate(games): diff --git a/rare/shared/workers/verify.py b/rare/shared/workers/verify.py index 1d191695..72362e45 100644 --- a/rare/shared/workers/verify.py +++ b/rare/shared/workers/verify.py @@ -79,6 +79,7 @@ class VerifyWorker(QueueWorker): cli.install_game_cleanup( game=self.rgame.game, igame=self.rgame.igame, repair_mode=True, repair_file=repair_file ) + self.rgame.needs_verification = False self.rgame.update_rgame() self.rgame.signals.progress.finish.emit(False)