From 30fc04ba61483ec496594149baf8dfedaafef22b Mon Sep 17 00:00:00 2001 From: Jaya Allamsetty Date: Mon, 26 Oct 2020 23:57:23 -0400 Subject: [PATCH] fix(logging): Add more details to onerror and onunhandledrejection errors. --- react/features/base/lib-jitsi-meet/middleware.js | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/react/features/base/lib-jitsi-meet/middleware.js b/react/features/base/lib-jitsi-meet/middleware.js index 5068d0b1e9..5adf8d4980 100644 --- a/react/features/base/lib-jitsi-meet/middleware.js +++ b/react/features/base/lib-jitsi-meet/middleware.js @@ -104,8 +104,10 @@ function _setErrorHandlers() { // eslint-disable-next-line max-params window.onerror = (message, source, lineno, colno, error) => { - JitsiMeetJS.getGlobalOnErrorHandler( - message, source, lineno, colno, error); + const errMsg = message || (error && error.message); + const stack = error && error.stack; + + JitsiMeetJS.getGlobalOnErrorHandler(errMsg, source, lineno, colno, stack); if (oldOnErrorHandler) { oldOnErrorHandler(message, source, lineno, colno, error); @@ -115,8 +117,14 @@ function _setErrorHandlers() { const oldOnUnhandledRejection = window.onunhandledrejection; window.onunhandledrejection = function(event) { - JitsiMeetJS.getGlobalOnErrorHandler( - null, null, null, null, event.reason); + let message = event.reason; + let stack = 'n/a'; + + if (event.reason instanceof Error) { + ({ message, stack } = event.reason); + } + + JitsiMeetJS.getGlobalOnErrorHandler(message, null, null, null, stack); if (oldOnUnhandledRejection) { oldOnUnhandledRejection(event);