Browse Source

Import $DataDir/bootstrap.dat automatically, if it exists.

As discussed on IRC. Intended to make using an external blockchain download
solution just a bit easier.
0.8
Jeff Garzik 12 years ago committed by Jeff Garzik
parent
commit
52c90a2b2b
  1. 15
      src/init.cpp

15
src/init.cpp

@ -722,7 +722,8 @@ bool AppInit2()
if (mapArgs.count("-loadblock")) if (mapArgs.count("-loadblock"))
{ {
uiInterface.InitMessage(_("Importing blocks...")); uiInterface.InitMessage(_("Importing blockchain data file."));
BOOST_FOREACH(string strFile, mapMultiArgs["-loadblock"]) BOOST_FOREACH(string strFile, mapMultiArgs["-loadblock"])
{ {
FILE *file = fopen(strFile.c_str(), "rb"); FILE *file = fopen(strFile.c_str(), "rb");
@ -731,6 +732,18 @@ bool AppInit2()
} }
} }
filesystem::path pathBootstrap = GetDataDir() / "bootstrap.dat";
if (filesystem::exists(pathBootstrap)) {
uiInterface.InitMessage(_("Importing bootstrap blockchain data file."));
FILE *file = fopen(pathBootstrap.string().c_str(), "rb");
if (file) {
filesystem::path pathBootstrapOld = GetDataDir() / "bootstrap.dat.old";
LoadExternalBlockFile(file);
RenameOver(pathBootstrap, pathBootstrapOld);
}
}
// ********************************************************* Step 9: load peers // ********************************************************* Step 9: load peers
uiInterface.InitMessage(_("Loading addresses...")); uiInterface.InitMessage(_("Loading addresses..."));

Loading…
Cancel
Save