bitcoin/bitcoin — pull request #4011 by gmaxwell (2014-04-06 07:28:56+00:00)
Title: Make CCryptoKeyStore::Unlock check all keys.

CCryptoKeyStore::Unlock has a loop to attempt decrypting each key which
only executes once, likely due to a simple mistake when the code was
originally written.

This patch fixes the behavior by making it check all keys. It also adds
a fatal assertion in the case some decrypt but some do not, since that
indicates that the wallet is in some kind of really bad state.

This may make unlocking noticeably slower on wallets with many keys.