Index: src/ch/StatusDlg.cpp =================================================================== diff -u -r8592d6dcef30c8e4967ca4dcee37c1ca52afbf16 -rcadc78491ac98e5f21d395aa25578cdd740ce819 --- src/ch/StatusDlg.cpp (.../StatusDlg.cpp) (revision 8592d6dcef30c8e4967ca4dcee37c1ca52afbf16) +++ src/ch/StatusDlg.cpp (.../StatusDlg.cpp) (revision cadc78491ac98e5f21d395aa25578cdd740ce819) @@ -1077,7 +1077,7 @@ lvi.iSubItem=3; CString strFmt; - strFmt.Format(_T("%.0f %%"), spTaskStats->GetCombinedProgress() * 100.0); + strFmt.Format(_T("%.1f %%"), spTaskStats->GetCombinedProgress() * 100.0); lvi.pszText = (PTSTR)(PCTSTR)strFmt; lvi.cchTextMax = lstrlen(lvi.pszText); @@ -1220,7 +1220,7 @@ CString strTitleText; if(m_spTaskMgrStats->GetTaskStatsCount() != 0) - strTitleText.Format(_T("%s [%.0f %%]"), GetResManager().LoadString(IDS_STATUSTITLE_STRING), m_spTaskMgrStats->GetCombinedProgress() * 100.0); + strTitleText.Format(_T("%s [%.1f %%]"), GetResManager().LoadString(IDS_STATUSTITLE_STRING), m_spTaskMgrStats->GetCombinedProgress() * 100.0); else strTitleText = GetResManager().LoadString(IDS_STATUSTITLE_STRING); Index: src/libchcore/TTaskStatsSnapshot.cpp =================================================================== diff -u -re96806b7f8ff7ca7e9f4afbea603e6351a3dc3e3 -rcadc78491ac98e5f21d395aa25578cdd740ce819 --- src/libchcore/TTaskStatsSnapshot.cpp (.../TTaskStatsSnapshot.cpp) (revision e96806b7f8ff7ca7e9f4afbea603e6351a3dc3e3) +++ src/libchcore/TTaskStatsSnapshot.cpp (.../TTaskStatsSnapshot.cpp) (revision cadc78491ac98e5f21d395aa25578cdd740ce819) @@ -105,11 +105,12 @@ m_dTaskSizeSpeed += spSubtaskStats->GetSizeSpeed(); } - // we're treating each of the items as 512B object to process + // we're treating each of the items as 4096 bytes object to process // to have some balance between items' count and items' size in // progress information - unsigned long long ullProcessed = 512ULL * m_ullProcessedCount + m_ullProcessedSize; - unsigned long long ullTotal = 512ULL * m_ullTotalCount + m_ullTotalSize; + const unsigned long long ullSectorSize = 4096; + unsigned long long ullProcessed = ullSectorSize * m_ullProcessedCount + m_ullProcessedSize; + unsigned long long ullTotal = ullSectorSize * m_ullTotalCount + m_ullTotalSize; if (ullTotal != 0) m_dCombinedProgress = Math::Div64(ullProcessed, ullTotal);