summaryrefslogtreecommitdiff
authordrw <drw>2005-03-01 18:59:12 (UTC)
committer drw <drw>2005-03-01 18:59:12 (UTC)
commit09c95ae28f4500ae0bb81f6ed305f877950626e8 (patch) (side-by-side diff)
tree4a53904008c8fc27845bbf6763a1419105b8d5fc
parent2f2b707684582cfa97c96c5fabab2197a7c7f307 (diff)
downloadopie-09c95ae28f4500ae0bb81f6ed305f877950626e8.zip
opie-09c95ae28f4500ae0bb81f6ed305f877950626e8.tar.gz
opie-09c95ae28f4500ae0bb81f6ed305f877950626e8.tar.bz2
Fix SIGSEV I created with last update
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/netsystemtime/mainwindow.cpp29
1 files changed, 16 insertions, 13 deletions
diff --git a/noncore/settings/netsystemtime/mainwindow.cpp b/noncore/settings/netsystemtime/mainwindow.cpp
index 486257f..01d9a98 100644
--- a/noncore/settings/netsystemtime/mainwindow.cpp
+++ b/noncore/settings/netsystemtime/mainwindow.cpp
@@ -68,18 +68,18 @@ MainWindow::MainWindow( QWidget *parent , const char *name, bool modal, WFlags
// Add tab widgets
mainWidget->addTab( timeTab = new TimeTabWidget( mainWidget ), "netsystemtime/DateTime", tr( "Time" ) );
mainWidget->addTab( formatTab = new FormatTabWidget( mainWidget ), "netsystemtime/formattab", tr( "Format" ) );
mainWidget->addTab( settingsTab = new SettingsTabWidget( mainWidget ), "SettingsIcon", tr( "Settings" ) );
mainWidget->addTab( predictTab = new PredictTabWidget( mainWidget ), "netsystemtime/predicttab", tr( "Predict" ) );
Config config( "ntp" );
config.setGroup( "settings" );
- slotDisplayNTPTab( config.readBoolEntry( "displayNtpTab", FALSE ) );
- slotDisplayPredictTab( config.readBoolEntry( "displayPredictTab", FALSE ) );
+ slotDisplayNTPTab( config.readBoolEntry( "displayNtpTab", false ) );
+ slotDisplayPredictTab( config.readBoolEntry( "displayPredictTab", false ) );
mainWidget->setCurrentTab( tr( "Time" ) );
layout->addWidget( mainWidget );
connect( qApp, SIGNAL(appMessage(const QCString&,const QByteArray&)),
this, SLOT(slotQCopReceive(const QCString&,const QByteArray&)) );
@@ -123,20 +123,20 @@ void MainWindow::accept()
{
// Turn off the screensaver (Note: needs to be encased in { } so that it deconstructs and sends)
{
QCopEnvelope disableScreenSaver( "QPE/System", "setScreenSaverIntervals(int,int,int)" );
disableScreenSaver << 0 << 0 << 0;
}
// Update the systemtime
- timeTab->saveSettings( TRUE );
+ timeTab->saveSettings( true );
// Save format options
- formatTab->saveSettings( TRUE );
+ formatTab->saveSettings( true );
// Save settings options
settingsTab->saveSettings();
// Since time has changed quickly load in the DateBookDB to allow the alarm server to get a better
// grip on itself (example re-trigger alarms for when we travel back in time).
DateBookDB db;
@@ -146,20 +146,20 @@ void MainWindow::accept()
// Exit app
qApp->quit();
}
void MainWindow::reject()
{
// Reset time settings
- timeTab->saveSettings( FALSE );
+ timeTab->saveSettings( false );
// Send notifications but do not save settings
- formatTab->saveSettings( FALSE );
+ formatTab->saveSettings( false );
// Exit app
qApp->quit();
}
void MainWindow::runNTP()
{
if ( !ntpDelayElapsed() && ntpInteractive )
@@ -180,20 +180,20 @@ void MainWindow::runNTP()
// Send information to time server tab if enabled
if ( ntpTabEnabled )
{
ntpTab->setStartTime( QDateTime::currentDateTime().toString() );
QString output = tr( "Running:\nntpdate " );
output.append( srv );
ntpTab->addNtpOutput( output );
+ ntpTab->setNTPBtnEnabled( false );
}
// Disable set time buttons & change app caption to indicate time update is happening
- ntpTab->setNTPBtnEnabled( false );
timeTab->setNTPBtnEnabled( false );
setCaption( tr( "Retrieving time from network..." ) );
if ( !ntpProcess )
{
ntpProcess = new OProcess();
connect( ntpProcess, SIGNAL(receivedStdout(Opie::Core::OProcess*,char*,int)),
this, SLOT(slotNtpOutput(Opie::Core::OProcess*,char*,int)) );
@@ -205,20 +205,22 @@ void MainWindow::runNTP()
ntpProcess->clearArguments();
*ntpProcess << "ntpdate" << srv;
bool ret = ntpProcess->start( OProcess::NotifyOnExit, OProcess::AllOutput );
if ( !ret )
{
QMessageBox::critical( this, tr( "Error" ), tr( "Error while getting time from network." ) );
if ( ntpTabEnabled )
+ {
ntpTab->addNtpOutput( tr( "Error while executing ntpdate" ) );
+ ntpTab->setNTPBtnEnabled( true );
+ }
// Re-enable set time buttons & change app caption to indicate time update is happening
- ntpTab->setNTPBtnEnabled( true );
timeTab->setNTPBtnEnabled( true );
setCaption( tr( "SystemTime" ) );
}
}
bool MainWindow::ntpDelayElapsed()
{
// Determine if time elapsed is greater than time delay
@@ -274,23 +276,23 @@ void MainWindow::slotDisplayPredictTab( bool display )
}
// Display/hide tab
display ? mainWidget->addTab( predictTab, "netsystemtime/predicttab", tr( "Predict" ) )
: mainWidget->removePage( predictTab );
}
void MainWindow::slotGetNTPTime()
{
- ntpInteractive = TRUE;
+ ntpInteractive = true;
runNTP();
}
void MainWindow::slotTimerGetNTPTime()
{
- ntpInteractive = FALSE;
+ ntpInteractive = false;
runNTP();
}
void MainWindow::slotProbeNTPServer()
{
ntpSock->connectToHost( settingsTab->ntpServer(), 123 );
}
@@ -304,17 +306,18 @@ void MainWindow::slotNtpOutput( OProcess *, char *buffer, int buflen )
}
void MainWindow::slotNtpFinished( OProcess *p )
{
QString output;
QDateTime dt = QDateTime::currentDateTime();
// Re-enable set time buttons & change app caption to indicate time update is happening
- ntpTab->setNTPBtnEnabled( true );
+ if ( ntpTabEnabled )
+ ntpTab->setNTPBtnEnabled( true );
timeTab->setNTPBtnEnabled( true );
setCaption( tr( "SystemTime" ) );
// Verify run was successful
if ( p->exitStatus() != 0 || !p->normalExit() )
{
if ( isVisible() && ntpInteractive )
{
@@ -329,17 +332,17 @@ void MainWindow::slotNtpFinished( OProcess *p )
// Set controls on time tab to new time value
timeTab->setDateTime( dt );
// Write out lookup information
Config config( "ntp" );
config.setGroup( "lookups" );
int lastLookup = config.readNumEntry( "time", 0 );
int lookupCount = config.readNumEntry( "count", 0 );
- bool lastNtp = config.readBoolEntry( "lastNtp", FALSE );
+ bool lastNtp = config.readBoolEntry( "lastNtp", false );
int time = TimeConversion::toUTC( QDateTime::currentDateTime() );
config.writeEntry( "time", time );
// Calculate new time/time shift
QString _offset = "offset";
QString _sec = "sec";
QRegExp _reOffset = QRegExp( _offset );
QRegExp _reEndOffset = QRegExp( _sec );
@@ -366,17 +369,17 @@ void MainWindow::slotNtpFinished( OProcess *p )
QString grpname = QString( "lookup_" ).append( QString::number( lookupCount ) );
config.setGroup( grpname );
lookupCount++;
predictTab->setShiftPerSec( (int)(timeShift / secsSinceLast) );
config.writeEntry( "secsSinceLast", secsSinceLast );
config.writeEntry( "timeShift", QString::number( timeShift ) );
config.setGroup( "lookups" );
config.writeEntry( "count", lookupCount );
- config.writeEntry( "lastNtp", TRUE );
+ config.writeEntry( "lastNtp", true );
}
}
void MainWindow::slotNTPDelayChanged( int delay )
{
ntpTimer->changeInterval( delay * 1000 * 60 );
ntpDelay = delay;
}