aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarian OANCΞA <contact@siteshop.ro>2014-11-10 20:10:25 +0800
committerMarian OANCΞA <contact@siteshop.ro>2014-11-10 20:10:25 +0800
commit67e3eff80608359ddeeb8a2f617148e2baf6a046 (patch)
tree85688bc267e377077eec2bbd7375582820166098
parenta2d8b8928949c589ad0282fbb1b9abf783f53c98 (diff)
parentf5024b4926ae90c7d5f560deefe8e27345a94c63 (diff)
downloaddexon-67e3eff80608359ddeeb8a2f617148e2baf6a046.tar.gz
dexon-67e3eff80608359ddeeb8a2f617148e2baf6a046.tar.zst
dexon-67e3eff80608359ddeeb8a2f617148e2baf6a046.zip
Merge pull request #6 from cubedro/develop
Changes from debris
-rw-r--r--lib/httprpc.js5
-rw-r--r--lib/main.js31
2 files changed, 22 insertions, 14 deletions
diff --git a/lib/httprpc.js b/lib/httprpc.js
index c1ee0f02a..99f02b532 100644
--- a/lib/httprpc.js
+++ b/lib/httprpc.js
@@ -45,7 +45,8 @@ if(process.env.NODE_ENV !== "build") {
return {
_id: object.id,
- data: object.result
+ data: object.result,
+ error: object.error
};
}
@@ -75,7 +76,7 @@ if(process.env.NODE_ENV !== "build") {
var self = this;
this.sendRequest(payload, function (request) {
var parsed = JSON.parse(request.responseText);
- if (parsed.result instanceof Array ? parsed.result.length === 0 : !parsed.result) {
+ if (parsed.error || (parsed.result instanceof Array ? parsed.result.length === 0 : !parsed.result)) {
return;
}
self.handlers.forEach(function (handler) {
diff --git a/lib/main.js b/lib/main.js
index 08eb722e2..5655a762e 100644
--- a/lib/main.js
+++ b/lib/main.js
@@ -155,15 +155,15 @@
return {call: call, args: args};
}).then(function (request) {
return new Promise(function (resolve, reject) {
- web3.provider.send(request, function (result) {
- if (result || typeof result === "boolean") {
+ web3.provider.send(request, function (err, result) {
+ if (!err) {
resolve(result);
return;
}
- reject(result);
+ reject(err);
});
});
- }).catch(function( err) {
+ }).catch(function(err) {
console.error(err);
});
};
@@ -175,8 +175,12 @@
var proto = {};
proto.get = function () {
return new Promise(function(resolve, reject) {
- web3.provider.send({call: property.getter}, function(result) {
- resolve(result);
+ web3.provider.send({call: property.getter}, function(err, result) {
+ if (!err) {
+ resolve(result);
+ return;
+ }
+ reject(err);
});
});
};
@@ -184,12 +188,12 @@
proto.set = function (val) {
return flattenPromise([val]).then(function (args) {
return new Promise(function (resolve) {
- web3.provider.send({call: property.setter, args: args}, function (result) {
- if (result) {
+ web3.provider.send({call: property.setter, args: args}, function (err, result) {
+ if (!err) {
resolve(result);
- } else {
- reject(result);
+ return;
}
+ reject(err);
});
});
}).catch(function (err) {
@@ -219,6 +223,8 @@
// Find termination
var str = "";
var i = 0, l = hex.length;
+ if (hex.substring(0, 2) == '0x')
+ i = 2;
for(; i < l; i+=2) {
var code = hex.charCodeAt(i);
if(code === 0) {
@@ -240,7 +246,8 @@
var hex = this.toHex(str);
while(hex.length < pad*2)
hex += "00";
- return hex;
+
+ return "0x" + hex;
},
eth: {
@@ -440,7 +447,7 @@
if(data._id) {
var cb = web3._callbacks[data._id];
if (cb) {
- cb.call(this, data.data);
+ cb.call(this, data.error, data.data)
delete web3._callbacks[data._id];
}
}