diff options
-rw-r--r-- | CHANGELOG.md | 1 | ||||
-rw-r--r-- | app/scripts/inpage.js | 15 |
2 files changed, 16 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index ba591dfa1..a2e9e1afa 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ - Selected account is now persisted between sessions, so the current account stays selected. - Account icons are now "identicons" (deterministically generated from the address). - Fixed link to Slack channel. +- Added a context guard for "define" to avoid UMD's exporting themselves to the wrong module system # 1.6.0 2016-04-22 diff --git a/app/scripts/inpage.js b/app/scripts/inpage.js index e6684cbd4..54470220f 100644 --- a/app/scripts/inpage.js +++ b/app/scripts/inpage.js @@ -1,9 +1,11 @@ +cleanContextForImports() const createPayload = require('web3-provider-engine/util/create-payload') const StreamProvider = require('./lib/stream-provider.js') const LocalMessageDuplexStream = require('./lib/local-message-stream.js') const setupMultiplex = require('./lib/stream-utils.js').setupMultiplex const RemoteStore = require('./lib/remote-store.js').RemoteStore const Web3 = require('web3') +restoreContextAfterImports() // rename on window delete window.Web3 @@ -102,3 +104,16 @@ remoteProvider.send = function(payload){ } } +// need to make sure we aren't affected by overlapping namespaces +// and that we dont affect the app with our namespace +// mostly a fix for web3's BigNumber if AMD's "define" is defined... +var __define = undefined + +function cleanContextForImports(){ + __define = global.define + delete global.define +} + +function restoreContextAfterImports(){ + global.define = __define +}
\ No newline at end of file |