-rw-r--r-- | noncore/settings/sysinfo/benchmarkinfo.cpp | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/noncore/settings/sysinfo/benchmarkinfo.cpp b/noncore/settings/sysinfo/benchmarkinfo.cpp index f3a6561..8497c8b 100644 --- a/noncore/settings/sysinfo/benchmarkinfo.cpp +++ b/noncore/settings/sysinfo/benchmarkinfo.cpp @@ -371,19 +371,33 @@ void BenchmarkInfo::performFileTest( const QString& fname, OCheckListItem* item item->setText( 1, tr( "error" ) ); return; } time.restart(); if ( ::system( readCommand ) == 0 ) { read = time.elapsed(); } else { item->setText( 1, tr( "error" ) ); return; } QFile::remove( filename ); - item->setText( 1, QString().sprintf( "%.2f kb/s, %.2f kb/s", FILE_TEST_COUNT / ( read / 1000.0 ), FILE_TEST_COUNT / ( write / 1000.0 ) ) ); + double readSpeed = FILE_TEST_COUNT / ( read / 1000.0 ); + QString readUnit = "kb/s"; + if ( readSpeed > 1024 ) + { + readSpeed = readSpeed / 1024.0; + readUnit = "mb/s"; + } + double writeSpeed = FILE_TEST_COUNT / ( write / 1000.0 ); + QString writeUnit = "kb/s"; + if ( writeSpeed > 1024 ) + { + writeSpeed = writeSpeed / 1024.0; + writeUnit = "mb/s"; + } + item->setText( 1, QString().sprintf( "%.2f %s, %.2f %s", readSpeed, readUnit.latin1(), writeSpeed, writeUnit.latin1() ) ); item->setOn( false ); } |