Defensive drive state (#89)
fixes #79 Reviewed-on: #89 Co-authored-by: localhorst <localhorst@mosad.xyz> Co-committed-by: localhorst <localhorst@mosad.xyz>
This commit is contained in:
@ -542,7 +542,6 @@ void reHDD::startShredAllDrives(list<Drive> *plistDrives)
|
|||||||
address << (void const *)&(*pTmpDrive);
|
address << (void const *)&(*pTmpDrive);
|
||||||
Logger::logThis()->info("Started shred (all) for: " + pTmpDrive->getModelName() + "-" + pTmpDrive->getSerial() + " @" + address.str());
|
Logger::logThis()->info("Started shred (all) for: " + pTmpDrive->getModelName() + "-" + pTmpDrive->getSerial() + " @" + address.str());
|
||||||
#endif
|
#endif
|
||||||
pTmpDrive->state = Drive::TaskState::SHRED_ACTIVE;
|
|
||||||
thread(ThreadShred, pTmpDrive).detach();
|
thread(ThreadShred, pTmpDrive).detach();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -694,7 +693,6 @@ void reHDD::handleEnter()
|
|||||||
if (tmpSelectedDrive->state == Drive::TaskState::SHRED_SELECTED)
|
if (tmpSelectedDrive->state == Drive::TaskState::SHRED_SELECTED)
|
||||||
{
|
{
|
||||||
Logger::logThis()->info("Started shred/check for: " + tmpSelectedDrive->getModelName() + "-" + tmpSelectedDrive->getSerial());
|
Logger::logThis()->info("Started shred/check for: " + tmpSelectedDrive->getModelName() + "-" + tmpSelectedDrive->getSerial());
|
||||||
tmpSelectedDrive->state = Drive::TaskState::SHRED_ACTIVE;
|
|
||||||
// task for drive is running --> don't show more task option
|
// task for drive is running --> don't show more task option
|
||||||
thread(ThreadShred, tmpSelectedDrive).detach();
|
thread(ThreadShred, tmpSelectedDrive).detach();
|
||||||
}
|
}
|
||||||
|
|||||||
@ -38,6 +38,10 @@ int Shred::shredDrive(Drive *drive, int *ipSignalFd)
|
|||||||
address << (void const *)&(*drive);
|
address << (void const *)&(*drive);
|
||||||
Logger::logThis()->info("Shred-Task started - Drive: " + drive->getModelName() + "-" + drive->getSerial() + " @" + address.str());
|
Logger::logThis()->info("Shred-Task started - Drive: " + drive->getModelName() + "-" + drive->getSerial() + " @" + address.str());
|
||||||
drive->bWasShredStarted = true; // Mark drive as partly shredded
|
drive->bWasShredStarted = true; // Mark drive as partly shredded
|
||||||
|
drive->bWasShredded = false;
|
||||||
|
drive->setTaskPercentage(0.0);
|
||||||
|
drive->u32DriveChecksumAfterShredding = UINT32_MAX;
|
||||||
|
drive->state = Drive::TaskState::SHRED_ACTIVE;
|
||||||
|
|
||||||
#ifdef DRYRUN
|
#ifdef DRYRUN
|
||||||
for (int i = 0; i <= 100; i++)
|
for (int i = 0; i <= 100; i++)
|
||||||
|
|||||||
Reference in New Issue
Block a user