function registerHandlers()

in stackdriver-errors.js [66:91]


function registerHandlers(reporter) {
  // Register as global error handler if requested
  var noop = function() {};
  if (reporter.reportUncaughtExceptions) {
    var oldErrorHandler = window.onerror || noop;

    window.onerror = function(message, source, lineno, colno, error) {
      if (error) {
        reporter.report(error).catch(noop);
      }
      oldErrorHandler(message, source, lineno, colno, error);
      return true;
    };
  }
  if (reporter.reportUnhandledPromiseRejections) {
    var oldPromiseRejectionHandler = window.onunhandledrejection || noop;

    window.onunhandledrejection = function(promiseRejectionEvent) {
      if (promiseRejectionEvent) {
        reporter.report(promiseRejectionEvent.reason).catch(noop);
      }
      oldPromiseRejectionHandler(promiseRejectionEvent);
      return true;
    };
  }
}