zcashd/src
Gavin Andresen d605bc4cd1 Exit cleanly if AppInit2 returns false
Bitcoin-Qt could core dump if application initialization failed in certain ways.

I double-fixed this:
1) qt/bitcoin.cpp now shuts down core threads cleanly if AppInit2 returns false
2) init.cpp now exits before StartNode() if strErrors is set (no reason to StartNode if we're just going to exit immediately anyway).

Tested by triggering all of the various ways AppInit2 can fail, either by passing bogus command-line arguments or just recompiling tweaked code to simulate failure.

This is a partial fix for #2480
2013-05-02 12:26:33 -04:00
..
json
leveldb Allow files to be opened for reading multiple times 2013-04-28 14:15:34 +02:00
obj
obj-test
qt Exit cleanly if AppInit2 returns false 2013-05-02 12:26:33 -04:00
test Port Thread* methods to boost::thread_group 2013-04-03 19:57:13 -04:00
addrman.cpp Split off hash.h from util.h 2012-12-18 21:39:29 +01:00
addrman.h
alert.cpp -alertnotify=<cmd> 2013-03-19 15:16:30 -04:00
alert.h -alertnotify=<cmd> 2013-03-19 15:16:30 -04:00
allocators.h don't use memset() in privacy/security relevant code parts 2012-11-09 12:53:53 +01:00
base58.h make CBase58Data class use zero_after_free_allocator 2012-11-09 19:25:20 +01:00
bignum.h Use a uint256 for bnChainWork 2013-04-12 12:17:28 +02:00
bitcoinrpc.cpp Clean up shutdown process 2013-04-03 19:57:53 -04:00
bitcoinrpc.h Port Thread* methods to boost::thread_group 2013-04-03 19:57:13 -04:00
bloom.cpp Short-circuit bloom checking if we will always return true. 2013-02-24 20:36:59 -05:00
bloom.h Add nFlags to CBloomFilter to make filter updating optional. 2013-01-16 14:34:06 -05:00
checkpoints.cpp Update transaction statistics 2013-04-04 02:39:44 +02:00
checkpoints.h Merge pull request #2186 from Diapolo/misc_stuff 2013-02-23 23:52:27 -08:00
checkqueue.h Port Thread* methods to boost::thread_group 2013-04-03 19:57:13 -04:00
clientversion.h move COPYRIGHT_YEAR to clientversion.h 2013-04-10 16:53:36 +02:00
compat.h Allow select()ing up to 1024 file descriptors on Windows 2013-04-26 01:31:10 +02:00
crypter.cpp don't use memset() in privacy/security relevant code parts 2012-11-09 12:53:53 +01:00
crypter.h don't use memset() in privacy/security relevant code parts 2012-11-09 12:53:53 +01:00
db.cpp Clean up shutdown process 2013-04-03 19:57:53 -04:00
db.h Clean up shutdown process 2013-04-03 19:57:53 -04:00
hash.cpp Add MurmurHash3 implementation to hash.h/add hash.cpp. 2013-01-16 12:48:01 -05:00
hash.h Add MurmurHash3 implementation to hash.h/add hash.cpp. 2013-01-16 12:48:01 -05:00
init.cpp Exit cleanly if AppInit2 returns false 2013-05-02 12:26:33 -04:00
init.h Have Qt poll for shutdown requested, the QT way. 2013-04-03 19:58:47 -04:00
key.cpp Compact serialization for scripts 2012-10-20 23:08:56 +02:00
key.h Split off hash.h from util.h 2012-12-18 21:39:29 +01:00
keystore.cpp
keystore.h
leveldb.cpp Reduce number of open LevelDB files to 64 2013-04-24 00:10:23 +02:00
leveldb.h Deal with LevelDB errors 2013-01-30 04:30:02 +01:00
limitedmap.h Add a limitedmap class similar to mruset 2013-04-01 11:56:22 -04:00
main.cpp Do not invoke DoS for non-canonical sigs 2013-04-18 22:49:23 +02:00
main.h Use a uint256 for bnChainWork 2013-04-12 12:17:28 +02:00
makefile.linux-mingw Merge pull request #2243 from luke-jr/bugfix_leveldb 2013-04-08 18:03:03 -07:00
makefile.mingw (finally) Remove IRC Seed support now that lfnet is down. 2013-03-24 19:38:19 -04:00
makefile.osx (finally) Remove IRC Seed support now that lfnet is down. 2013-03-24 19:38:19 -04:00
makefile.unix Add comments to UNIX Makefile regarding USE_UPNP 2013-04-17 00:04:03 -05:00
mruset.h
net.cpp Try to increase file descriptor rlimit if necessary 2013-04-29 01:46:24 +02:00
net.h Don't announce to non-peer CNodes 2013-04-30 19:41:58 +02:00
netbase.cpp fix !O_NONBLOCK where ~O_NONBLOCK was meant 2013-04-27 15:37:26 +02:00
netbase.h Merge pull request #1913 from sipa/noi2p 2012-10-11 00:41:33 -07:00
noui.cpp Improve block database load error reporting 2013-02-17 23:25:42 +01:00
protocol.cpp Always print full hashes (tx, block, inv) 2013-04-07 03:43:55 +02:00
protocol.h Use per-message send buffer, rather than per connection 2013-03-29 23:56:26 +01:00
rpcblockchain.cpp Make output of gettxout RPC more consistent 2013-01-04 22:51:11 +01:00
rpcdump.cpp add rescan bool to importprivkey to control whether to do a rescan after import 2012-12-06 20:18:17 -06:00
rpcmining.cpp Do not use C++11 std::vector.data() 2013-02-07 18:54:22 -05:00
rpcnet.cpp Merge pull request #2461 from sipa/syncnode 2013-04-09 10:51:06 -07:00
rpcrawtransaction.cpp add address and account information to listunspent 2013-02-27 22:13:43 -05:00
rpcwallet.cpp Merge pull request #2272 from gavinandresen/getbalancefix 2013-04-08 06:37:58 -07:00
script.cpp Merge pull request #2114 from sipa/strictstrict 2013-01-23 07:08:55 -08:00
script.h Replace 520 constant with MAX_SCRIPT_ELEMENT_SIZE 2013-01-18 13:55:18 -05:00
serialize.h Use per-message send buffer, rather than per connection 2013-03-29 23:56:26 +01:00
sync.cpp
sync.h Merge pull request #2003 from alexanderkjeldaas/documented-locking-part-2 2012-12-12 09:27:35 -08:00
threadsafety.h o Added threadsafety.h - a set of macros using the -Wthread-safety 2012-11-11 00:53:00 -03:00
txdb.cpp Clean up shutdown process 2013-04-03 19:57:53 -04:00
txdb.h Merge pull request #2221 from sipa/perfo 2013-02-22 09:01:30 -08:00
ui_interface.h Have Qt poll for shutdown requested, the QT way. 2013-04-03 19:58:47 -04:00
uint256.h Use a uint256 for bnChainWork 2013-04-12 12:17:28 +02:00
util.cpp Try to increase file descriptor rlimit if necessary 2013-04-29 01:46:24 +02:00
util.h Try to increase file descriptor rlimit if necessary 2013-04-29 01:46:24 +02:00
version.cpp
version.h Bump PROTOCOL_VERSION for filter messages. 2013-01-16 12:48:02 -05:00
wallet.cpp Merge pull request #2478 from sipa/fullhash 2013-04-09 10:57:16 -07:00
wallet.h Always print full hashes (tx, block, inv) 2013-04-07 03:43:55 +02:00
walletdb.cpp Always print full hashes (tx, block, inv) 2013-04-07 03:43:55 +02:00
walletdb.h