fix leveldb traversal.

This commit is contained in:
Christopher Jeffrey 2014-11-10 15:36:51 -08:00
parent f057ec71a6
commit 581ff27610
1 changed files with 31 additions and 14 deletions

View File

@ -5739,6 +5739,19 @@ read_addr(const std::string addr) {
continue; continue;
} }
for (unsigned int vo = 0; vo < ctx.vout.size(); vo++) {
const CTxOut& txout = ctx.vout[vo];
const CScript& scriptPubKey = txout.scriptPubKey;
int nRequired;
txnouttype type;
vector<CTxDestination> addresses;
if (!ExtractDestinations(scriptPubKey, type, addresses, nRequired)) {
continue;
}
BOOST_FOREACH(const CTxDestination& address, addresses) {
if (CBitcoinAddress(address).ToString() != addr) {
continue;
}
if (cur == NULL) { if (cur == NULL) {
head->ctx = ctx; head->ctx = ctx;
uint256 hash(((CMerkleTx)ctx).hashBlock.GetHex()); uint256 hash(((CMerkleTx)ctx).hashBlock.GetHex());
@ -5754,6 +5767,10 @@ read_addr(const std::string addr) {
cur->next = item; cur->next = item;
cur = item; cur = item;
} }
goto found;
}
}
found:
} }
} }