mirror of
https://github.com/Xahau/xahau.js.git
synced 2025-11-24 22:25:48 +00:00
Fix crash due to rippled slowDown error
This commit is contained in:
@@ -18,7 +18,7 @@ function isImmediateRejection(engineResult) {
|
||||
|
||||
function convertSubmitErrors(callback) {
|
||||
return function(error, data) {
|
||||
if (isImmediateRejection(data.engineResult)) {
|
||||
if (!error && isImmediateRejection(data.engineResult)) {
|
||||
callback(new utils.common.errors.RippleError('Submit failed'), data);
|
||||
} else {
|
||||
callback(error, data);
|
||||
|
||||
@@ -227,14 +227,8 @@ Request.prototype.callback = function(callback, successEvent, errorEvent) {
|
||||
|
||||
let called = false;
|
||||
|
||||
function requestSuccess(message) {
|
||||
if (!called) {
|
||||
called = true;
|
||||
callback.call(self, null, message);
|
||||
}
|
||||
}
|
||||
|
||||
function requestError(error) {
|
||||
self.remote.removeListener('error', requestError);
|
||||
if (!called) {
|
||||
called = true;
|
||||
|
||||
@@ -246,8 +240,18 @@ Request.prototype.callback = function(callback, successEvent, errorEvent) {
|
||||
}
|
||||
}
|
||||
|
||||
function requestSuccess(message) {
|
||||
self.remote.removeListener('error', requestError);
|
||||
if (!called) {
|
||||
called = true;
|
||||
callback.call(self, null, message);
|
||||
}
|
||||
}
|
||||
|
||||
this.remote.once('error', requestError); // e.g. rate-limiting slowDown error
|
||||
this.once(this.successEvent, requestSuccess);
|
||||
this.once(this.errorEvent, requestError);
|
||||
|
||||
if (!this.requested) {
|
||||
this.request();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user