diff --git a/lib/common/init.js b/lib/common/init.js index d732352a30514..21d1ac1a930e7 100644 --- a/lib/common/init.js +++ b/lib/common/init.js @@ -1,4 +1,5 @@ const timers = require('timers') +const util = require('util') process.atomBinding = require('./atom-binding-setup')(process.binding, process.type) @@ -28,6 +29,12 @@ if (process.type === 'browser') { // recalculate the timeout in browser process. global.setTimeout = wrapWithActivateUvLoop(timers.setTimeout) global.setInterval = wrapWithActivateUvLoop(timers.setInterval) + + global.setTimeout[util.promisify.custom] = function (timeout) { + return new Promise(resolve => { + global.setTimeout(resolve, timeout) + }) + } } if (process.platform === 'win32') {