From 9948e9b073d6f214504b842d3de7c12986a608c1 Mon Sep 17 00:00:00 2001 From: MathieuG-P <40181755+Zagrios@users.noreply.github.com> Date: Fri, 17 Nov 2023 23:21:28 +0100 Subject: [PATCH] [bugfix] BS version page being downloaded was always recognized as a Steam version, preventing launching if it was an Oculus version --- src/main/services/bs-launcher/abstract-launcher.service.ts | 3 +++ .../bs-version-download/bs-oculus-downloader.service.ts | 6 +++++- .../bs-version-download/bs-steam-downloader.service.ts | 6 +++++- 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/main/services/bs-launcher/abstract-launcher.service.ts b/src/main/services/bs-launcher/abstract-launcher.service.ts index 46342ed2..86c0c0c3 100644 --- a/src/main/services/bs-launcher/abstract-launcher.service.ts +++ b/src/main/services/bs-launcher/abstract-launcher.service.ts @@ -2,6 +2,7 @@ import { LaunchOption } from "shared/models/bs-launch"; import { BSLocalVersionService } from "../bs-local-version.service"; import { ChildProcessWithoutNullStreams, SpawnOptionsWithoutStdio, spawn } from "child_process"; import path from "path"; +import log from "electron-log"; export abstract class AbstractLauncherService { @@ -39,6 +40,8 @@ export abstract class AbstractLauncherService { spawnOptions.windowsVerbatimArguments = true; } + log.info(`Launch BS exe at ${bsExePath} with args ${args?.join(" ")}`); + return spawn(bsExePath, args, spawnOptions); } diff --git a/src/main/services/bs-version-download/bs-oculus-downloader.service.ts b/src/main/services/bs-version-download/bs-oculus-downloader.service.ts index fe4b1408..7fc43a3b 100644 --- a/src/main/services/bs-version-download/bs-oculus-downloader.service.ts +++ b/src/main/services/bs-version-download/bs-oculus-downloader.service.ts @@ -108,7 +108,11 @@ export class BsOculusDownloaderService { private async createDownloadVersion(version: BSVersion): Promise<{version: BSVersion, dest: string}>{ const dest = await ensurePathNotAlreadyExist(await this.versions.getVersionPath(version)); return { - version: {...version, ...(path.basename(dest) !== version.BSVersion && { name: path.basename(dest) })}, + version: { + ...version, + ...(path.basename(dest) !== version.BSVersion && { name: path.basename(dest) }), + metadata: { store: BsStore.OCULUS } + }, dest }; } diff --git a/src/main/services/bs-version-download/bs-steam-downloader.service.ts b/src/main/services/bs-version-download/bs-steam-downloader.service.ts index 60fba30a..a86c7639 100644 --- a/src/main/services/bs-version-download/bs-steam-downloader.service.ts +++ b/src/main/services/bs-version-download/bs-steam-downloader.service.ts @@ -64,7 +64,11 @@ export class BsSteamDownloaderService { const versionPath = await this.localVersionService.getVersionPath(downloadInfos.bsVersion); const dest = downloadInfos.isVerification ? versionPath : await ensurePathNotAlreadyExist(versionPath); - const downloadVersion: BSVersion = { ...downloadInfos.bsVersion, ...(path.basename(dest) !== downloadInfos.bsVersion.BSVersion && { name: path.basename(dest) }) }; + const downloadVersion: BSVersion = { + ...downloadInfos.bsVersion, + ...(path.basename(dest) !== downloadInfos.bsVersion.BSVersion && { name: path.basename(dest) }), + metadata: { store: BsStore.STEAM } + }; const depotDownloaderOptions: DepotDownloaderArgsOptions = { app: BS_APP_ID,