author | zecke <zecke> | 2004-10-22 15:15:01 (UTC) |
---|---|---|
committer | zecke <zecke> | 2004-10-22 15:15:01 (UTC) |
commit | f2a2eca1870e1fd88c82a6ccb039610949daa72c (patch) (side-by-side diff) | |
tree | 9ca204b4cddfee6272cfc8d5e55b27b60a0743d0 | |
parent | 0a3ab70a5be70bb04691a2a566ce63719e57f83e (diff) | |
download | opie-f2a2eca1870e1fd88c82a6ccb039610949daa72c.zip opie-f2a2eca1870e1fd88c82a6ccb039610949daa72c.tar.gz opie-f2a2eca1870e1fd88c82a6ccb039610949daa72c.tar.bz2 |
Write the hardware clock after setting the datetime. This way we can
gurantee it is set while opiealarm has not run.
-rw-r--r-- | noncore/settings/netsystemtime/timetabwidget.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/noncore/settings/netsystemtime/timetabwidget.cpp b/noncore/settings/netsystemtime/timetabwidget.cpp index 1ea460e..3cc127d 100644 --- a/noncore/settings/netsystemtime/timetabwidget.cpp +++ b/noncore/settings/netsystemtime/timetabwidget.cpp @@ -66,13 +66,13 @@ TimeTabWidget::TimeTabWidget( QWidget *parent ) QScrollView *sv = new QScrollView( this ); tmpvb->addWidget( sv, 0, 0 ); sv->setResizePolicy( QScrollView::AutoOneFit ); sv->setFrameStyle( QFrame::NoFrame ); QWidget *container = new QWidget( sv->viewport() ); sv->addChild( container ); - + QGridLayout *layout = new QGridLayout( container ); layout->setMargin( 2 ); layout->setSpacing( 4 ); // Hours layout->addMultiCellWidget( new QLabel( tr( "Hour" ), container ), 1, 1, 0, 1 ); @@ -184,13 +184,13 @@ void TimeTabWidget::setDateTime( const QDateTime &dt ) } else { sbHour->setValue( t.hour() ); } sbMin->setValue( t.minute() ); - + // Set date btnDate->setDate( dt.date() ); } void TimeTabWidget::setSystemTime( const QDateTime &dt ) { @@ -200,20 +200,26 @@ void TimeTabWidget::setSystemTime( const QDateTime &dt ) struct timeval myTv; int t = TimeConversion::toUTC( dt ); myTv.tv_sec = t; myTv.tv_usec = 0; if ( myTv.tv_sec != -1 ) - ::settimeofday( &myTv, 0 ); + ::settimeofday( &myTv, 0 ); + + /* + * Commit the datetime to the 'hardware' + * as Global::writeHWClock() is a NOOP with Opie Alarm + */ + system("/sbin/hwclock --systohc --utc"); } } void TimeTabWidget::slotUse12HourTime( int i ) { use12HourTime = (i == 1); - + cbAmpm->setEnabled( use12HourTime ); int show_hour = sbHour->value(); if ( use12HourTime ) { |