aboutsummaryrefslogtreecommitdiff
path: root/src/init.cpp
diff options
context:
space:
mode:
authorR E Broadley <rebroad+github@gmail.com>2012-04-18 12:30:24 +0100
committerR E Broadley <rebroad+github@gmail.com>2012-04-18 12:30:24 +0100
commit871c3557bf08dd29c6d2ffd10e854bbd0478b3b5 (patch)
tree2bcec5de60e32c895946a1cda2b4440ff8313f86 /src/init.cpp
parentac4161e25df2a9475abb0f62d32a7d86d6baff0f (diff)
Added ability to respond to signals during Block Loading stage.
Diffstat (limited to 'src/init.cpp')
-rw-r--r--src/init.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/init.cpp b/src/init.cpp
index 0eb37fe99c..14db9e7f5e 100644
--- a/src/init.cpp
+++ b/src/init.cpp
@@ -353,6 +353,15 @@ bool AppInit2(int argc, char* argv[])
nStart = GetTimeMillis();
if (!LoadBlockIndex())
strErrors << _("Error loading blkindex.dat") << "\n";
+
+ // as LoadBlockIndex can take several minutes, it's possible the user
+ // requested to kill bitcoin-qt during the last operation. If so, exit.
+ // As the program has not fully started yet, Shutdown() is possibly overkill.
+ if (fRequestShutdown)
+ {
+ printf("Shutdown requested. Exiting.\n");
+ return false;
+ }
printf(" block index %15"PRI64d"ms\n", GetTimeMillis() - nStart);
InitMessage(_("Loading wallet..."));