From bceb7c77d1ab9a80a276c0967f00d838b6aa774e Mon Sep 17 00:00:00 2001 From: Alexis Svinartchouk Date: Wed, 27 Mar 2019 19:45:42 +0100 Subject: [PATCH] Better reporting of unhandled rejections to sentry Changelog-entry: Better reporting of unhandled rejections to sentry Change-type: patch --- lib/gui/app/app.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) 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,