Wallet corruption fix. No longer calls a rescan on daemon load, instead we now delete the non existant txs from the wallet, so next time you load it the error is gone.

This commit is contained in:
blackjok3r
2019-01-04 16:11:51 +08:00
parent 75ae32c0aa
commit 5837b5bc05
2 changed files with 17 additions and 10 deletions

View File

@@ -1342,11 +1342,10 @@ bool CheckTransactionWithoutProofVerification(uint32_t tiptime,const CTransactio
// Transactions containing empty `vin` must have either non-empty
// `vjoinsplit` or non-empty `vShieldedSpend`.
if (tx.vin.empty() && tx.vjoinsplit.empty() && tx.vShieldedSpend.empty()) {
fprintf(stderr,"vin empty for tx: %s\n",tx.GetHash().ToString().c_str());
if (tx.vin.empty() && tx.vjoinsplit.empty() && tx.vShieldedSpend.empty())
return state.DoS(10, error("CheckTransaction(): vin empty"),
REJECT_INVALID, "bad-txns-vin-empty");
}
// Transactions containing empty `vout` must have either non-empty
// `vjoinsplit` or non-empty `vShieldedOutput`.
if (tx.vout.empty() && tx.vjoinsplit.empty() && tx.vShieldedOutput.empty())