Merge #13577: logging: avoid nStart may be used uninitialized in AppInitMain warning

2dcd7b4ec logging: avoid nStart may be used uninitialized in AppInitMain warning (mruddy)

Pull request description:

  Was getting the following compiler warning:

  ```
  init.cpp: In function ‘bool AppInitMain()’:
  init.cpp:1616:60: warning: ‘nStart’ may be used uninitialized in this function [-Wmaybe-uninitialized]
           LogPrintf(" block index %15dms\n", GetTimeMillis() - nStart);
  ```

  It's ok without this PR, but this PR renames `nStart` to `load_block_index_start_time`, makes it `const`, and also reduces the scope of the variable.

  The logging line is moved such that the the time spent will be logged even if a shutdown is requested while the index is being loaded.

  Having the log message output even when a shutdown is requested may be how this was intended to work before anyways. That could explain the leading space, as such a log message now looks like:
  ```
  2018-06-30T11:34:05Z [0%]...[16%]...[33%]...[50%]... block index           25750ms
  2018-06-30T11:34:17Z Shutdown requested. Exiting.
  ```

Tree-SHA512: 967048afbc31f2ce8f80ae7d33fee0bdcbe94550cf2b5b662087e2a7cff14a8bf43d909b30f930660c184ec6c3c7e1302a84e3e54fc1723f7412827f4bf2c518
This commit is contained in:
Wladimir J. van der Laan 2018-07-05 18:07:21 +02:00
commit c9eb8d1c55
No known key found for this signature in database
GPG key ID: 1E4AED62986CD25D

View file

@ -1295,8 +1295,6 @@ bool AppInitMain()
return InitError(_("Unable to start HTTP server. See debug log for details.")); return InitError(_("Unable to start HTTP server. See debug log for details."));
} }
int64_t nStart;
// ********************************************************* Step 5: verify wallet database integrity // ********************************************************* Step 5: verify wallet database integrity
if (!g_wallet_init_interface.Verify()) return false; if (!g_wallet_init_interface.Verify()) return false;
@ -1448,8 +1446,8 @@ bool AppInitMain()
LOCK(cs_main); LOCK(cs_main);
nStart = GetTimeMillis();
do { do {
const int64_t load_block_index_start_time = GetTimeMillis();
try { try {
UnloadBlockIndex(); UnloadBlockIndex();
pcoinsTip.reset(); pcoinsTip.reset();
@ -1572,6 +1570,7 @@ bool AppInitMain()
} }
fLoaded = true; fLoaded = true;
LogPrintf(" block index %15dms\n", GetTimeMillis() - load_block_index_start_time);
} while(false); } while(false);
if (!fLoaded && !ShutdownRequested()) { if (!fLoaded && !ShutdownRequested()) {
@ -1601,9 +1600,6 @@ bool AppInitMain()
LogPrintf("Shutdown requested. Exiting.\n"); LogPrintf("Shutdown requested. Exiting.\n");
return false; return false;
} }
if (fLoaded) {
LogPrintf(" block index %15dms\n", GetTimeMillis() - nStart);
}
fs::path est_path = GetDataDir() / FEE_ESTIMATES_FILENAME; fs::path est_path = GetDataDir() / FEE_ESTIMATES_FILENAME;
CAutoFile est_filein(fsbridge::fopen(est_path, "rb"), SER_DISK, CLIENT_VERSION); CAutoFile est_filein(fsbridge::fopen(est_path, "rb"), SER_DISK, CLIENT_VERSION);