Refactor start of delete thread (#90)
Reviewed-on: #90 Co-authored-by: localhorst <localhorst@mosad.xyz> Co-committed-by: localhorst <localhorst@mosad.xyz>
This commit is contained in:
@ -95,7 +95,7 @@ private:
|
|||||||
static void ThreadScanDevices();
|
static void ThreadScanDevices();
|
||||||
static void ThreadUserInput();
|
static void ThreadUserInput();
|
||||||
static void ThreadShred(Drive *const pDrive);
|
static void ThreadShred(Drive *const pDrive);
|
||||||
static void ThreadDelete();
|
static void ThreadDelete(Drive *const pDrive);
|
||||||
static void ThreadCheckFrozenDrives();
|
static void ThreadCheckFrozenDrives();
|
||||||
static void handleArrowKey(TUI::UserInput userInput);
|
static void handleArrowKey(TUI::UserInput userInput);
|
||||||
static void handleEnter();
|
static void handleEnter();
|
||||||
|
|||||||
@ -284,16 +284,16 @@ void reHDD::ThreadShred(Drive *const pDrive)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void reHDD::ThreadDelete()
|
void reHDD::ThreadDelete(Drive *const pDrive)
|
||||||
{
|
{
|
||||||
Drive *tmpSelectedDrive = getSelectedDrive();
|
if (pDrive != nullptr)
|
||||||
if (tmpSelectedDrive != nullptr)
|
|
||||||
{
|
{
|
||||||
tmpSelectedDrive->setActionStartTimestamp(); // save timestamp at start of deleting
|
pDrive->state = Drive::TaskState::DELETE_ACTIVE;
|
||||||
Delete::deleteDrive(tmpSelectedDrive); // blocking, no thread
|
pDrive->setActionStartTimestamp(); // save timestamp at start of deleting
|
||||||
tmpSelectedDrive->state = Drive::TaskState::NONE; // delete finished
|
Delete::deleteDrive(pDrive); // blocking, no thread
|
||||||
tmpSelectedDrive->bWasDeleted = true;
|
pDrive->state = Drive::TaskState::NONE; // delete finished
|
||||||
Logger::logThis()->info("Finished delete for: " + tmpSelectedDrive->getModelName() + "-" + tmpSelectedDrive->getSerial());
|
pDrive->bWasDeleted = true;
|
||||||
|
Logger::logThis()->info("Finished delete for: " + pDrive->getModelName() + "-" + pDrive->getSerial());
|
||||||
ui->updateTUI(&listDrives, u16SelectedEntry);
|
ui->updateTUI(&listDrives, u16SelectedEntry);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -693,16 +693,13 @@ 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());
|
||||||
// task for drive is running --> don't show more task option
|
|
||||||
thread(ThreadShred, tmpSelectedDrive).detach();
|
thread(ThreadShred, tmpSelectedDrive).detach();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (tmpSelectedDrive->state == Drive::TaskState::DELETE_SELECTED)
|
if (tmpSelectedDrive->state == Drive::TaskState::DELETE_SELECTED)
|
||||||
{
|
{
|
||||||
Logger::logThis()->info("Started delete for: " + tmpSelectedDrive->getModelName() + "-" + tmpSelectedDrive->getSerial());
|
Logger::logThis()->info("Started delete for: " + tmpSelectedDrive->getModelName() + "-" + tmpSelectedDrive->getSerial());
|
||||||
tmpSelectedDrive->state = Drive::TaskState::DELETE_ACTIVE;
|
thread(ThreadDelete, tmpSelectedDrive).detach();
|
||||||
// task for drive is running --> don't show more task options
|
|
||||||
thread(ThreadDelete).detach();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user