Fix a Java6-ism.
Don't build/send Bloom filters when there are no keys in any wallets.
Resolves issue 324.
Clear some FindBugs warnings.
Clear some more FindBugs warnings, including a real bugfix to the bloom filter calculations.
Catch NullPointerException from bouncy castle signature verification. This can be triggered by a specially crafted signature. Thanks to Sergio Damian Lerner for finding this.
Treat client protocol versions higher than the version we prefer equally so we don't zap peers that upgrade early when unimportant (for us) protocol changes roll out.
Clear all possible NPE findbugs warnings, and fix some getter/setter synchronization mismatches.
Restrict scope of NPE check for Bouncy Castle bug.
Fix a bug in Peer error logging, found by FindBugs.
Test the ability to choose your own change address. This clears a FindBugs warning about the field never being written.
Add/fix hashCodes/equals() implementations in some cases. Clears more FindBugs warnings.
Resolve more FindBugs warnings. These changes are all no-ops.
Fix bug that could cause huge slowdowns during initial header sync: peers were not checking if they were still download peers after receiving header messages.
Fix a java7-ism
Fix crash in toString() for an unparsed block header object.
Trivial cleanup
Avoid trying to resolve dependencies of newly solved orphan blocks when we are still downloading headers.
Optimization when downloading blocks (should be rare these days), don't format log messages that requires an expensive hash->string conversion if the debug channel is not enabled.
Don't print difficulty transition times when it's less than 50 msec.
Minor comment fix in Block.java