separate shred and check process

This commit is contained in:
2022-09-27 21:58:59 +02:00
parent 392fe67aa2
commit b73e1765b5
5 changed files with 45 additions and 18 deletions

View File

@ -105,6 +105,13 @@ void TUI::updateTUI(list <Drive>* plistDrives, uint8_t u8SelectedEntry)
stream << fixed << setprecision(3) << (it->getTaskPercentage());
sState = "Shredding: " + stream.str() + "%";
it->calculateTaskDuration();
sTime = this->formatTimeDuration(it->getTaskDuration());
sSpeed = this->formatSpeed(it->sShredSpeed.u32ShredTimeDelta, it->sShredSpeed.ulWrittenBytes);
break;
case Drive::CHECK_ACTIVE:
stream << fixed << setprecision(3) << (it->getTaskPercentage());
sState = "Checking: " + stream.str() + "%";
it->calculateTaskDuration();
sTime = this->formatTimeDuration(it->getTaskDuration());
sSpeed = this->formatSpeed(it->sShredSpeed.u32ShredTimeDelta, it->sShredSpeed.ulWrittenBytes);
@ -114,7 +121,6 @@ void TUI::updateTUI(list <Drive>* plistDrives, uint8_t u8SelectedEntry)
it->calculateTaskDuration();
sTime = this->formatTimeDuration(it->getTaskDuration());
break;
case Drive::NONE:
case Drive::SHRED_SELECTED:
case Drive::DELETE_SELECTED:
@ -124,12 +130,21 @@ void TUI::updateTUI(list <Drive>* plistDrives, uint8_t u8SelectedEntry)
}
if (it->bWasShredded)
{
sState = "SHREDDED"; //mark drive as shreded previously, overwrite if deleted
if(it->bWasChecked)
{
//drive was also checked after shredding
sState = "SHREDDED & CHECKED"; //mark drive as shredded previously and optional checked
}
else
{
//shredded and not checked yet
sState = "SHREDDED"; //mark drive as shredded previously
}
sTime = this->formatTimeDuration(it->getTaskDuration());
}
#ifdef ZERO_CHECK_ALERT
if(bSelectedEntry && it->bWasShredded && (it->u32DriveChecksumAferShredding != 0U))
#ifdef ZERO_CHECK
if(bSelectedEntry && it->bWasChecked && (it->u32DriveChecksumAferShredding != 0U))
{
dialog=createZeroChecksumWarning(70, 16, ((u16StdscrX)-(int)(u16StdscrX/2)-20),(int)(u16StdscrY/2)-8, it->getPath(), it->getModelFamily(), it->getModelName(), it->getSerial(), it->u32DriveChecksumAferShredding);
wrefresh(dialog);
@ -554,6 +569,10 @@ void TUI::displaySelectedDrive(Drive drive, int stdscrX, int stdscrY)
menustate.bAbort = true;
break;
case Drive::CHECK_ACTIVE : //check task running for this drive
menustate.bAbort = true;
break;
case Drive::DELETE_SELECTED : //delete task selected for this drive
menustate.bConfirmDelete = true;
break;