From b4cdc4feb97715d0bd2033d0dfd2d13263d4cc92 Mon Sep 17 00:00:00 2001 From: Elio Struyf Date: Tue, 12 Oct 2021 15:52:54 +0200 Subject: [PATCH] Version fixes --- src/helpers/Extension.ts | 4 ++++ src/helpers/MediaLibrary.ts | 16 ++++++++++------ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/src/helpers/Extension.ts b/src/helpers/Extension.ts index c63cc30e..a445a379 100644 --- a/src/helpers/Extension.ts +++ b/src/helpers/Extension.ts @@ -97,6 +97,10 @@ export class Extension { return; } + if (!versionInfo.usedVersion) { + return; + } + // Split semantic version const version = versionInfo.usedVersion.split('.'); const major = parseInt(version[0]); diff --git a/src/helpers/MediaLibrary.ts b/src/helpers/MediaLibrary.ts index b86736bc..f7f09a75 100644 --- a/src/helpers/MediaLibrary.ts +++ b/src/helpers/MediaLibrary.ts @@ -14,11 +14,15 @@ interface MediaRecord { } export class MediaLibrary { - private db: JsonDB; + private db: JsonDB | undefined; private static instance: MediaLibrary; private constructor() { const wsFolder = Folders.getWorkspaceFolder(); + if (!wsFolder) { + return; + } + this.db = new JsonDB(join(parseWinPath(wsFolder?.fsPath || ""), LocalStore.rootFolder, LocalStore.contentFolder, LocalStore.mediaDatabaseFile), true, false, '/'); workspace.onDidRenameFiles(e => { @@ -46,7 +50,7 @@ export class MediaLibrary { public get(id: string): MediaRecord | undefined { try { const fileId = this.parsePath(id); - if (this.db.exists(fileId)) { + if (this.db?.exists(fileId)) { return this.db.getData(fileId); } return undefined; @@ -57,16 +61,16 @@ export class MediaLibrary { public set(id: string, metadata: any): void { const fileId = this.parsePath(id); - this.db.push(fileId, metadata, true); + this.db?.push(fileId, metadata, true); } public rename(oldId: string, newId: string): void { const fileId = this.parsePath(oldId); const newFileId = this.parsePath(newId); - const data = this.db.getData(fileId); + const data = this.db?.getData(fileId); if (data) { - this.db.delete(fileId); - this.db.push(newFileId, data, true); + this.db?.delete(fileId); + this.db?.push(newFileId, data, true); } }