mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-11 22:50:59 +01:00
init: Factor out AppInitLockDataDirectory
Alternative to #10818, alternative solution to #10815. After this change: All the AppInit steps before and inclusive AppInitLockDataDirectory must not have Shutdown() called in case of failure. Only when AppInitMain fails, Shutdown should be called. Changes the GUI and bitcoind code to consistently do this.
This commit is contained in:
16
src/init.h
16
src/init.h
@@ -27,27 +27,33 @@ void InitLogging();
|
||||
void InitParameterInteraction();
|
||||
|
||||
/** Initialize bitcoin core: Basic context setup.
|
||||
* @note This can be done before daemonization.
|
||||
* @note This can be done before daemonization. Do not call Shutdown() if this function fails.
|
||||
* @pre Parameters should be parsed and config file should be read.
|
||||
*/
|
||||
bool AppInitBasicSetup();
|
||||
/**
|
||||
* Initialization: parameter interaction.
|
||||
* @note This can be done before daemonization.
|
||||
* @note This can be done before daemonization. Do not call Shutdown() if this function fails.
|
||||
* @pre Parameters should be parsed and config file should be read, AppInitBasicSetup should have been called.
|
||||
*/
|
||||
bool AppInitParameterInteraction();
|
||||
/**
|
||||
* Initialization sanity checks: ecc init, sanity checks, dir lock.
|
||||
* @note This can be done before daemonization.
|
||||
* @note This can be done before daemonization. Do not call Shutdown() if this function fails.
|
||||
* @pre Parameters should be parsed and config file should be read, AppInitParameterInteraction should have been called.
|
||||
*/
|
||||
bool AppInitSanityChecks();
|
||||
/**
|
||||
* Bitcoin core main initialization.
|
||||
* @note This should only be done after daemonization.
|
||||
* Lock bitcoin core data directory.
|
||||
* @note This should only be done after daemonization. Do not call Shutdown() if this function fails.
|
||||
* @pre Parameters should be parsed and config file should be read, AppInitSanityChecks should have been called.
|
||||
*/
|
||||
bool AppInitLockDataDirectory();
|
||||
/**
|
||||
* Bitcoin core main initialization.
|
||||
* @note This should only be done after daemonization. Call Shutdown() if this function fails.
|
||||
* @pre Parameters should be parsed and config file should be read, AppInitLockDataDirectory should have been called.
|
||||
*/
|
||||
bool AppInitMain(boost::thread_group& threadGroup, CScheduler& scheduler);
|
||||
|
||||
/** The help message mode determines what help message to show */
|
||||
|
||||
Reference in New Issue
Block a user