wallet: handle account init errors.
This commit is contained in:
parent
41a94dacd2
commit
02ccde4f8a
1 changed files with 5 additions and 7 deletions
|
|
@ -729,15 +729,13 @@ Wallet.prototype._createAccount = co(function* createAccount(options) {
|
|||
|
||||
try {
|
||||
account = Account.fromOptions(this.db, options);
|
||||
account.wallet = this;
|
||||
yield account.init();
|
||||
} catch (e) {
|
||||
this.drop();
|
||||
throw e;
|
||||
}
|
||||
|
||||
account.wallet = this;
|
||||
|
||||
yield account.init();
|
||||
|
||||
this.logger.info('Created account %s/%s/%d.',
|
||||
account.id,
|
||||
account.name,
|
||||
|
|
@ -761,10 +759,10 @@ Wallet.prototype.ensureAccount = co(function* ensureAccount(options) {
|
|||
var name = options.name;
|
||||
var account = yield this.getAccount(name);
|
||||
|
||||
if (!account)
|
||||
return yield this.createAccount(options);
|
||||
if (account)
|
||||
return account;
|
||||
|
||||
return account;
|
||||
return yield this.createAccount(options);
|
||||
});
|
||||
|
||||
/**
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue