From 7af47136ffe59d56abf0ee4979c1672fe3f10033 Mon Sep 17 00:00:00 2001 From: Phillip Susi Date: Sun, 27 Jan 2013 20:51:19 -0500 Subject: [PATCH] Clean up OperationDetail timer initialization The timer variables were not being properly initialized leading to bogus time values sometimes being displayed. --- src/OperationDetail.cc | 23 ++++++++--------------- 1 file changed, 8 insertions(+), 15 deletions(-) diff --git a/src/OperationDetail.cc b/src/OperationDetail.cc index 1f22cefe..86b41273 100644 --- a/src/OperationDetail.cc +++ b/src/OperationDetail.cc @@ -22,24 +22,16 @@ namespace GParted { -OperationDetail::OperationDetail() +OperationDetail::OperationDetail() : fraction( -1 ), cancelflag( 0 ), status( STATUS_NONE ), time_start( -1 ), + time_elapsed( -1 ) { - status = STATUS_NONE; // prevent uninitialized member access - cancelflag = 0; - set_status( STATUS_NONE ) ; - fraction = -1 ; - time_elapsed = -1 ; } -OperationDetail::OperationDetail( const Glib::ustring & description, OperationDetailStatus status, Font font ) +OperationDetail::OperationDetail( const Glib::ustring & description, OperationDetailStatus status, Font font ) : + fraction( -1 ), cancelflag( 0 ), status( STATUS_NONE ), time_start( -1 ), time_elapsed( -1 ) { - cancelflag = 0; - this ->status = STATUS_NONE; // prevent uninitialized member access - set_description( description, font ) ; - set_status( status ) ; - - fraction = -1 ; - time_elapsed = -1 ; + set_description( description, font ); + set_status( status ); } OperationDetail::~OperationDetail() @@ -92,7 +84,8 @@ void OperationDetail::set_status( OperationDetailStatus status ) break ; case STATUS_ERROR: case STATUS_SUCCES: - time_elapsed = std::time( NULL ) - time_start ; + if( time_start != -1 ) + time_elapsed = std::time( NULL ) - time_start ; break ; default: