From 89e3a52ef232b78593419fa605f988fe2f2af21d Mon Sep 17 00:00:00 2001 From: Jonas Schwabe Date: Sat, 10 Dec 2016 20:32:04 +0100 Subject: [PATCH] Add a fallback when the notification icon theme is not valid - the app did not start up successfully before --- src/main.js | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/src/main.js b/src/main.js index eef0b6d6..283aca7e 100644 --- a/src/main.js +++ b/src/main.js @@ -153,12 +153,21 @@ const trayImages = (() => { } case 'linux': { - const theme = config.trayIconTheme || 'light'; - return { - normal: nativeImage.createFromPath(path.resolve(assetsDir, 'linux', theme, 'MenuIconTemplate.png')), - unread: nativeImage.createFromPath(path.resolve(assetsDir, 'linux', theme, 'MenuIconUnreadTemplate.png')), - mention: nativeImage.createFromPath(path.resolve(assetsDir, 'linux', theme, 'MenuIconMentionTemplate.png')) - }; + const theme = config.trayIconTheme; + try { + return { + normal: nativeImage.createFromPath(path.resolve(assetsDir, 'linux', theme, 'MenuIconTemplate.png')), + unread: nativeImage.createFromPath(path.resolve(assetsDir, 'linux', theme, 'MenuIconUnreadTemplate.png')), + mention: nativeImage.createFromPath(path.resolve(assetsDir, 'linux', theme, 'MenuIconMentionTemplate.png')) + }; + } catch (e) { + //Fallback for invalid theme setting + return { + normal: nativeImage.createFromPath(path.resolve(assetsDir, 'linux', 'light', 'MenuIconTemplate.png')), + unread: nativeImage.createFromPath(path.resolve(assetsDir, 'linux', 'light', 'MenuIconUnreadTemplate.png')), + mention: nativeImage.createFromPath(path.resolve(assetsDir, 'linux', 'light', 'MenuIconMentionTemplate.png')) + }; + } } default: return {};