diff --git a/lib/browser.js b/lib/browser.js index 51d19792..e536702e 100644 --- a/lib/browser.js +++ b/lib/browser.js @@ -1,10 +1,13 @@ -var _global = (function () { - if (!this && typeof global !== 'undefined') { - return global; - } - return this; -})(); -var NativeWebSocket = _global.WebSocket || _global.MozWebSocket; +var _globalThis; +try { + _globalThis = require('es5-ext/global'); +} catch (error) { +} finally { + if (!_globalThis && typeof window !== 'undefined') { _globalThis = window; } + if (!_globalThis) { throw new Error('Could not determine global this'); } +} + +var NativeWebSocket = _globalThis.WebSocket || _globalThis.MozWebSocket; var websocket_version = require('./version'); diff --git a/package.json b/package.json index 7aeb5cec..4cbff181 100644 --- a/package.json +++ b/package.json @@ -28,6 +28,7 @@ }, "dependencies": { "debug": "^2.2.0", + "es5-ext": "^0.10.50", "nan": "^2.14.0", "typedarray-to-buffer": "^3.1.5", "yaeti": "^0.0.6"