aboutsummaryrefslogtreecommitdiffstats
path: root/mist/assets/ext
diff options
context:
space:
mode:
authorobscuren <geffobscura@gmail.com>2014-09-26 19:47:29 +0800
committerobscuren <geffobscura@gmail.com>2014-09-26 19:47:29 +0800
commitbd95fd770be8e6a969513a8eaddd05f3ae47c9a3 (patch)
tree498105565b63558018ff284ebf31932dbf1cf0ef /mist/assets/ext
parentb8b1453392aa6a4a801b935621cb8405e6581f8a (diff)
parent2b8eae9810d67136812a4e9e9a822db47cc45a54 (diff)
downloaddexon-bd95fd770be8e6a969513a8eaddd05f3ae47c9a3.tar
dexon-bd95fd770be8e6a969513a8eaddd05f3ae47c9a3.tar.gz
dexon-bd95fd770be8e6a969513a8eaddd05f3ae47c9a3.tar.bz2
dexon-bd95fd770be8e6a969513a8eaddd05f3ae47c9a3.tar.lz
dexon-bd95fd770be8e6a969513a8eaddd05f3ae47c9a3.tar.xz
dexon-bd95fd770be8e6a969513a8eaddd05f3ae47c9a3.tar.zst
dexon-bd95fd770be8e6a969513a8eaddd05f3ae47c9a3.zip
Merge branch 'release/0.6.7'
Diffstat (limited to 'mist/assets/ext')
-rw-r--r--mist/assets/ext/html_messaging.js27
1 files changed, 14 insertions, 13 deletions
diff --git a/mist/assets/ext/html_messaging.js b/mist/assets/ext/html_messaging.js
index efb950b4b..1f9418148 100644
--- a/mist/assets/ext/html_messaging.js
+++ b/mist/assets/ext/html_messaging.js
@@ -92,19 +92,19 @@
promises.push(params.from.then(function(_from) { params.from = _from; }));
}
- if(isPromise(params.data)) {
- promises.push(params.data.then(function(_code) { params.data = _code; }));
- } else {
- if(typeof params.data === "object") {
- data = "";
- for(var i = 0; i < params.data.length; i++) {
- data += params.data[i]
- }
- } else {
- data = params.data;
- }
- }
-
+ if(typeof params.data !== "object" || isPromise(params.data)) {
+ params.data = [params.data]
+ }
+
+ var data = params.data;
+ for(var i = 0; i < params.data.length; i++) {
+ if(isPromise(params.data[i])) {
+ var promise = params.data[i];
+ var _i = i;
+ promises.push(promise.then(function(_arg) { params.data[_i] = _arg; }));
+ }
+ }
+
// Make sure everything is string
var fields = ["value", "gas", "gasPrice"];
for(var i = 0; i < fields.length; i++) {
@@ -117,6 +117,7 @@
// Load promises then call the last "transact".
return Q.all(promises).then(function() {
return new Promise(function(resolve, reject) {
+ params.data = params.data.join("");
postData({call: "transact", args: params}, function(data) {
if(data[1])
reject(data[0]);