Narrow the locking in Peer.processInv() to avoid invoking memoryPool.seen() with the Peer lock held. This resolves an inversion that can occur if a transaction confidence listener is run due to being marked as broadcast. Update issue 233.
Narrow the locking in Peer.processInv() to avoid invoking memoryPool.seen() with the Peer lock held.
This resolves an inversion that can occur if a transaction confidence listener is run due to being marked as broadcast.
Update issue 233.

janko33bd/bitcoinj,HashEngineering/megacoinj,HashEngineering/anycoinj,fsb4000/bitcoinj,yezune/darkcoinj,TheBlueMatt/bitcoinj,tangyves/bitcoinj,rnicoll/altcoinj,MonetaryUnit/monetaryunitj,ahmedbodi/anycoinj,HashEngineering/unobtaniumj,VishalRao/bitcoinj,HashEngineering/groestlcoinj,Coinomi/bitcoinj,funkshelper/bitcoinj,monapu/monacoinj-multibit,dcw312/bitcoinj,pelle/bitcoinj,you21979/bitcoinj,cannabiscoindev/cannabiscoinj,yenliangl/bitcoinj,kurtwalker/bitcoinj,cannabiscoindev/cannabiscoinj,HashEngineering/darkcoinj,oscarguindzberg/bitcoinj,stonecoldpat/bitcoinj,imzhuli/bitcoinj,stonecoldpat/bitcoinj,HashEngineering/dashj,habibmasuro/smileycoinj,Kangmo/bitcoinj,TrustPlus/trustpluscoinj,Rimbit/rimbitj,yezune/darkcoinj,blockchain/bitcoinj,patricklodder/bitcoinj,haxwell/bitcoinj,MrDunne/bitcoinj,HashEngineering/digitalcoinj,stafur/trustpluscoinj,hank/feathercoinj,HashEngineering/megacoinj,bitbandi/spreadcoinj,imsaguy/bitcoinj,peacekeeper/bitcoinj,MintcoinCommunity/mintcoinj,kris-davison/non-working-darkcoinj-fork,keremhd/mintcoinj,HashEngineering/darkcoinj,HashEngineering/dashj,bitbandi/spreadcoinj,kmels/bitcoinj,HashEngineering/myriadcoinj,jife94/bitcoinj,strawpay/bitcoinj,MintcoinCommunity/mintcoinj,DigiByte-Team/digibytej-alice,troggy/bitcoinj,designsters/android-fork-bitcoinj,dalbelap/bitcoinj,cpacia/bitcoinj,Kefkius/groestlcoinj,rnicoll/bitcoinj,szdx/bitcoinj,mrosseel/bitcoinj-old,natzei/bitcoinj,cbeams/bitcoinj,Coinomi/bitcoinj,devrandom/bitcoinj,HashEngineering/groestlcoinj,hank/litecoinj,you21979/bitcoinj,HashEngineering/unobtaniumj,HashEngineering/digitalcoinj,tangyves/bitcoinj,novitski/bitcoinj,VegasCoin/vegascoinj,dogecoin/libdohj,UberPay/bitcoinj,langerhans/bitcoinj-alice-hd,bitcoin-solutions/bitcoinj-alice,bitcoinj/bitcoinj,HashEngineering/maxcoinj,kris-davison/non-working-darkcoinj-fork,HashEngineering/dimecoinj,Kefkius/groestlcoinj,HashEngineering/dimecoinj,bitbandi/spreadcoinj,akonring/bitcoinj_generous,veritaseum/bitcoinj,HashEngineering/quarkcoinj,FTraian/bitcoinj-uc,bankonme/monetaryunitj,AugieMillares/bitcoinj,oscarguindzberg/bitcoinj,bankonme/monetaryunitj,habibmasuro/litecoinj,tjth/bitcoinj-lotterycoin,GroestlCoin/groestlcoinj,ohac/sha1coinj,fsb4000/bitcoinj,stafur/trustpluscoinj,janko33bd/bitcoinj,schildbach/bitcoinj,HashEngineering/namecoinj,praus/multicoinj,HashEngineering/maxcoinj,HashEngineering/quarkcoinj,HashEngineering/digitalcoinj,lavajumper/bitcoinj-scrypt,HashEngineering/dashj,HashEngineering/darkcoinj,jdojff/bitcoinj,peterdettman/bitcoinj,kurtwalker/bitcoinj,patricklodder/libdohj,yezune/darkcoinj,stafur/trustpluscoinj,DigiByte-Team/digibytej-alice,bitcoin-solutions/bitcoinj-alice,jdojff/bitcoinj,Kefkius/groestlcoinj,kurtwalker/bitcoinj,bankonme/monetaryunitj,MonetaryUnit/monetaryunitj,ligi/bitcoinj,HashEngineering/frankoj,HashEngineering/mobilecashj,stonecoldpat/bitcoinj,dexX7/bitcoinj,hank/litecoinj-new,marctrem/bitcoinj,paulminer/bitcoinj,Crypto-Expert/digitalcoinj,RaviAjaibSingh/bitcoinj,Kefkius/groestlcoinj,jife94/bitcoinj,reddcoin-project/reddcoinj-pow,greenaddress/bitcoinj,haxwell/bitcoinj,jife94/bitcoinj,MonetaryUnit/monetaryunitj,veritaseum/bitcoinj,cpacia/bitcoinj,HashEngineering/frankoj,HashEngineering/megacoinj,jjculber/defcoinj,Kefkius/groestlcoinj,HashEngineering/maxcoinj,yenliangl/bitcoinj,langerhans/dogecoinj-new,HashEngineering/myriadcoinj,Qw0kka/creditsj,HashEngineering/frankoj,devrandom/bitcoinj,reddcoin-project/reddcoinj-pow,jdojff/bitcoinj,lavajumper/bitcoinj-scrypt,HashEngineering/digitalcoinj-mb,lavajumper/bitcoinj-scrypt,HashEngineering/infinitecoinj,TheBlueMatt/bitcoinj,GroestlCoin/groestlcoinj,techsubodh/admin_tracker,bitbandi/spreadcoinj,you21979/bitcoinj,VegasCoin/vegascoinj,therightwaystudio/fork_bitcoinj,HashEngineering/myriadcoinj,nikileshsa/bitcoinj,cpacia/bitcoinj,ahmedbodi/anycoinj,techsubodh/admin_tracker,TrustPlus/trustpluscoinj,Coinomi/bitcoinj,FTraian/bitcoinj-uc,patricklodder/libdohj,patricklodder/bitcoinj,fsb4000/bitcoinj,reddcoin-project/reddcoinj-pow,HashEngineering/namecoinj,TrustPlus/trustpluscoinj,coinspark/sparkbit-bitcoinj,langerhans/dogecoinj-alice,DynamicCoinOrg/dmcJ,patricklodder/libdohj,HashEngineering/maxcoinj,bitcoinj/bitcoinj,habibmasuro/smileycoinj,framewr/bitcoinj,PeterNSteinmetz/peternsteinmetz-bitcoinj,patricklodder/bitcoinj,meeh420/anoncoinj,wpstudio/blazecoinj,peterdettman/bitcoinj,HashEngineering/dashj,MintcoinCommunity/mintcoinj,schildbach/bitcoinj,HashEngineering/quarkcoinj,danielmcclure/bitcoinj,cannabiscoindev/cannabiscoinj,DigiByte-Team/digibytej-alice,ahmedbodi/anycoinj,HashEngineering/unobtaniumj,devrandom/bitcoinj,yezune/darkcoinj,HashEngineering/mobilecashj,GroestlCoin/groestlcoinj,rnicoll/libdohj,MikeHuntington/blackcoinj-new,rootstock/bitcoinj,bitbandi/spreadcoinj,veritaseum/bitcoinj,tjth/bitcoinj-lotterycoin,hughneale/bitcoinj,HashEngineering/groestlcoinj,bitsquare/bitcoinj,kris-davison/non-working-darkcoinj-fork,dldinternet/bitcoinj,Enigmachine/btcjwork2,cannabiscoindev/cannabiscoinj,VegasCoin/vegascoinj,HashEngineering/dimecoinj,HashEngineering/maxcoinj,techsubodh/admin_tracker,TheBlueMatt/bitcoinj,HashEngineering/mobilecashj,natzei/bitcoinj,paulmadore/woodcoinj,habibmasuro/smileycoinj,sserrano44/bitcoinj-watcher-service,FTraian/bitcoinj-uc,tjth/bitcoinj-lotterycoin,bitcoin-solutions/bitcoinj-alice,haxwell/bitcoinj,HashEngineering/namecoinj,tangyves/bitcoinj,kmels/bitcoinj,stafur/trustpluscoinj