// found in the LICENSE file.
var eventNatives = requireNative('event_natives');
+ var handleUncaughtException = require('uncaught_exception_handler').handle;
var logging = requireNative('logging');
var schemaRegistry = requireNative('schema_registry');
var sendRequest = require('sendRequest').sendRequest;
if (result !== undefined)
$Array.push(results, result);
} catch (e) {
- console.error(
+ handleUncaughtException(
'Error in event handler for ' +
- (this.eventName ? this.eventName : '(unknown)') +
- ': ' + e.message + '\nStack trace: ' + e.stack);
+ (this.eventName ? this.eventName : '(unknown)') +
+ ': ' + e.message + '\nStack trace: ' + e.stack,
+ e);
}
}
if (results.length)
}
});
- var Event = utils.expose('Event', EventImpl, [
+ var Event = utils.expose('Event', EventImpl, { functions: [
'addListener',
'removeListener',
'hasListener',
'addRules',
'removeRules',
'getRules'
- ]);
+ ] });
// NOTE: Event is (lazily) exposed as chrome.Event from dispatcher.cc.
exports.Event = Event;