diff --git a/lib/gui/app/app.js b/lib/gui/app/app.js index 8b19e4af..303fbe0e 100644 --- a/lib/gui/app/app.js +++ b/lib/gui/app/app.js @@ -52,7 +52,7 @@ const osDialog = require('./os/dialog') const exceptionReporter = require('./modules/exception-reporter') const updateLock = require('./modules/update-lock') -/* eslint-disable lodash/prefer-lodash-method */ +/* eslint-disable lodash/prefer-lodash-method,lodash/prefer-get */ // Enable debug information from all modules that use `debug` // See https://github.com/visionmedia/debug#browser-support @@ -62,6 +62,15 @@ const updateLock = require('./modules/update-lock') process.env.DRIVELIST_DEBUG = /drivelist|^\*$/i.test(process.env.DEBUG) ? '1' : '' window.localStorage.debug = process.env.DEBUG +window.addEventListener('unhandledrejection', (event) => { + // Promise: event.reason + // Bluebird: event.detail.reason + // Anything else: event + const error = event.reason || (event.detail && event.detail.reason) || event + analytics.logException(error) + event.preventDefault() +}) + // Set application session UUID store.dispatch({ type: store.Actions.SET_APPLICATION_SESSION_UUID,