mirror of
https://github.com/cookiengineer/audacity
synced 2025-08-08 08:01:19 +02:00
Bug 1952 - Windows: Timer Record - debug failure msg
Now we show "11:07:29 +" for a time 100 years, 11 hours, 7 mins and 29 seconds in the future, rather than ASSERTing. The + should probably be mentioned in the manual. "In the countdown, times more than 24 hours ahead aren't shown fully. A '+' sign after the time indicates that it is more than a day ahead."
This commit is contained in:
parent
b5f9acefa4
commit
41959d4d54
@ -1696,14 +1696,20 @@ ProgressResult TimerProgressDialog::UpdateProgress()
|
||||
// Only update if a full second has passed.
|
||||
if (now - mLastUpdate > 1000)
|
||||
{
|
||||
// Bug 1952:
|
||||
// wxTimeSpan will assert on ridiculously large values.
|
||||
// We silently wrap the displayed range at one day.
|
||||
// You'll only see the remaining hours, mins and secs.
|
||||
// With a + sign, if the time was wrapped.
|
||||
const wxLongLong_t wrapTime = 24 * 60 * 60 * 1000;
|
||||
if (m_bShowElapsedTime) {
|
||||
wxTimeSpan tsElapsed(0, 0, 0, elapsed);
|
||||
mElapsed->SetLabel(tsElapsed.Format(wxT("%H:%M:%S")));
|
||||
wxTimeSpan tsElapsed(0, 0, 0, elapsed % wrapTime);
|
||||
mElapsed->SetLabel(tsElapsed.Format(wxT("%H:%M:%S")) + ((elapsed >= wrapTime) ? " +":""));
|
||||
mElapsed->Update();
|
||||
}
|
||||
|
||||
wxTimeSpan tsRemains(0, 0, 0, remains);
|
||||
mRemaining->SetLabel(tsRemains.Format(wxT("%H:%M:%S")));
|
||||
wxTimeSpan tsRemains(0, 0, 0, remains % wrapTime);
|
||||
mRemaining->SetLabel(tsRemains.Format(wxT("%H:%M:%S")) + ((remains >= wrapTime) ? " +":""));
|
||||
mRemaining->Update();
|
||||
|
||||
mLastUpdate = now;
|
||||
|
Loading…
x
Reference in New Issue
Block a user