-rw-r--r-- | noncore/settings/netsystemtime/ntp.cpp | 9 | ||||
-rw-r--r-- | noncore/settings/netsystemtime/settime.cpp | 3 |
2 files changed, 8 insertions, 4 deletions
diff --git a/noncore/settings/netsystemtime/ntp.cpp b/noncore/settings/netsystemtime/ntp.cpp index 830c0c3..7971f9a 100644 --- a/noncore/settings/netsystemtime/ntp.cpp +++ b/noncore/settings/netsystemtime/ntp.cpp @@ -147,27 +147,27 @@ void Ntp::ntpFinished(OProcess *p) Config cfg("ntp",Config::User); cfg.setGroup("lookups"); int lastLookup = cfg.readNumEntry("time",0); int lookupCount = cfg.readNumEntry("count",0); + bool lastNtp = cfg.readBoolEntry("lastNtp",false); int time = TimeConversion::toUTC( QDateTime::currentDateTime() ); cfg.writeEntry("time", time); - cfg.setGroup("correction"); - cfg.writeEntry("time", time); float timeShift = getTimeShift(); if (timeShift == 0.0) return; int secsSinceLast = time - lastLookup; TextLabelNewTime->setText(QDateTime::currentDateTime().toString()); TextLabelTimeShift->setText(QString::number(timeShift)+tr(" seconds")); - if ( lastLookup > 0 && secsSinceLast > 60* SpinBoxMinLookupDelay->value()) + if ( lastNtp && lastLookup > 0 && secsSinceLast > 60* SpinBoxMinLookupDelay->value()) { + cfg.setGroup("lookup_"+QString::number(lookupCount)); lookupCount++; cfg.writeEntry("count",lookupCount); - cfg.setGroup("lookup_"+QString::number(lookupCount)); _shiftPerSec = timeShift / secsSinceLast; qDebug("secs since last lookup %i", secsSinceLast);qDebug("timeshift since last lookup %f", timeShift);qDebug("timeshift since per sec %f", _shiftPerSec); cfg.writeEntry("secsSinceLast",secsSinceLast); cfg.writeEntry("timeShift",QString::number(timeShift)); + cfg.writeEntry("lastNtp",true); } } @@ -227,8 +227,9 @@ void Ntp::preditctTime() { Config cfg("ntp",Config::User); cfg.setGroup("lookups"); int lastTime = cfg.readNumEntry("time",0); + cfg.writeEntry("lastNtp",true); setenv( "TZ", tz->currentZone(), 1 ); int now = TimeConversion::toUTC( QDateTime::currentDateTime() ); int corr = int((now - lastTime) * _shiftPerSec); TextLabelEstimatedShift->setText(QString::number(corr)+tr(" seconds")); diff --git a/noncore/settings/netsystemtime/settime.cpp b/noncore/settings/netsystemtime/settime.cpp index e7e604f..9c5323a 100644 --- a/noncore/settings/netsystemtime/settime.cpp +++ b/noncore/settings/netsystemtime/settime.cpp @@ -229,8 +229,11 @@ void SetDateTime::writeSettings() } void SetDateTime::commitTime() { + Config cfg("ntp",Config::User); + cfg.setGroup("lookups"); + cfg.writeEntry("lastNtp",false); tz->setFocus(); // Need to process the QCOP event generated above before proceeding qApp->processEvents(); |