wallet: handle account init errors.

This commit is contained in:
Christopher Jeffrey 2016-10-05 07:59:12 -07:00
parent 41a94dacd2
commit 02ccde4f8a
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD

View File

@ -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);
});
/**