Validating senders balance before importing transaction to queue

This commit is contained in:
Tomasz Drwięga
2016-03-16 10:40:33 +01:00
parent be32e79a7a
commit fdba8de600
7 changed files with 94 additions and 47 deletions

View File

@@ -38,7 +38,7 @@ use range_collection::{RangeCollection, ToUsize, FromUsize};
use ethcore::error::*;
use ethcore::transaction::SignedTransaction;
use ethcore::block::Block;
use ethminer::{Miner, MinerService};
use ethminer::{Miner, MinerService, AccountDetails};
use io::SyncIo;
use time;
use super::SyncConfig;
@@ -940,8 +940,11 @@ impl ChainSync {
transactions.push(tx);
}
let chain = io.chain();
let fetch_nonce = |a: &Address| chain.nonce(a);
let _ = self.miner.import_transactions(transactions, fetch_nonce);
let fetch_account = |a: &Address| AccountDetails {
nonce: chain.nonce(a),
balance: chain.balance(a)
};
let _ = self.miner.import_transactions(transactions, fetch_account);
Ok(())
}