aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CHANGELOG.md1
-rw-r--r--app/scripts/inpage.js15
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