Merge pull request #2606 from gavinandresen/threadfix

Exit cleanly if AppInit2 returns false
This commit is contained in:
Pieter Wuille 2013-05-04 07:43:15 -07:00
commit f309cb76c2
2 changed files with 6 additions and 3 deletions

View file

@ -1041,6 +1041,9 @@ bool AppInit2(boost::thread_group& threadGroup)
if (!CheckDiskSpace()) if (!CheckDiskSpace())
return false; return false;
if (!strErrors.str().empty())
return InitError(strErrors.str());
RandAddSeedPerfmon(); RandAddSeedPerfmon();
//// debug print //// debug print
@ -1062,9 +1065,6 @@ bool AppInit2(boost::thread_group& threadGroup)
uiInterface.InitMessage(_("Done loading")); uiInterface.InitMessage(_("Done loading"));
if (!strErrors.str().empty())
return InitError(strErrors.str());
// Add wallet transactions that aren't already in a block to mapTransactions // Add wallet transactions that aren't already in a block to mapTransactions
pwalletMain->ReacceptWalletTransactions(); pwalletMain->ReacceptWalletTransactions();

View file

@ -282,6 +282,9 @@ int main(int argc, char *argv[])
} }
else else
{ {
threadGroup.interrupt_all();
threadGroup.join_all();
Shutdown();
return 1; return 1;
} }
} catch (std::exception& e) { } catch (std::exception& e) {