KeyChainGroup: Fix NullPointerException in findRedeemDataFromScriptHash() if no deterministic keychain is in the group.

This commit is contained in:
Andreas Schildbach
2019-03-19 18:01:18 +01:00
parent c3b6e0d7b9
commit c7dfe59317

View File

@@ -502,12 +502,14 @@ public class KeyChainGroup implements KeyBag {
@Override
@Nullable
public RedeemData findRedeemDataFromScriptHash(byte[] scriptHash) {
// Iterate in reverse order, since the active keychain is the one most likely to have the hit
for (Iterator<DeterministicKeyChain> iter = chains.descendingIterator() ; iter.hasNext() ; ) {
DeterministicKeyChain chain = iter.next();
RedeemData redeemData = chain.findRedeemDataByScriptHash(ByteString.copyFrom(scriptHash));
if (redeemData != null)
return redeemData;
if (chains != null) {
// Iterate in reverse order, since the active keychain is the one most likely to have the hit
for (Iterator<DeterministicKeyChain> iter = chains.descendingIterator(); iter.hasNext();) {
DeterministicKeyChain chain = iter.next();
RedeemData redeemData = chain.findRedeemDataByScriptHash(ByteString.copyFrom(scriptHash));
if (redeemData != null)
return redeemData;
}
}
return null;
}