Don't scan the time offsets vector repeatedly once we've displayed the warning that the user's clock may be wrong.

This commit is contained in:
Chris Moore 2011-01-24 16:25:41 -08:00
parent 10abe4f26e
commit d9711a5798

View file

@ -810,13 +810,17 @@ void AddTimeData(unsigned int ip, int64 nTime)
else
{
nTimeOffset = 0;
// If nobody else has the same time as us, give a warning
static bool fDone;
if (!fDone)
{
// If nobody has a time different than ours but within 5 minutes of ours, give a warning
bool fMatch = false;
foreach(int64 nOffset, vTimeOffsets)
if (nOffset != 0 && abs64(nOffset) < 5 * 60)
fMatch = true;
static bool fDone;
if (!fMatch && !fDone)
if (!fMatch)
{
fDone = true;
string strMessage = _("Warning: Please check that your computer's date and time are correct. If your clock is wrong Bitcoin will not work properly.");
@ -825,6 +829,7 @@ void AddTimeData(unsigned int ip, int64 nTime)
boost::thread(boost::bind(ThreadSafeMessageBox, strMessage+" ", string("Bitcoin"), wxOK | wxICON_EXCLAMATION, (wxWindow*)NULL, -1, -1));
}
}
}
foreach(int64 n, vTimeOffsets)
printf("%+"PRI64d" ", n);
printf("| nTimeOffset = %+"PRI64d" (%+"PRI64d" minutes)\n", nTimeOffset, nTimeOffset/60);