output/Internal: remember the most recent error

This commit is contained in:
Max Kellermann
2016-12-27 07:36:12 +01:00
parent a9f2d25957
commit ef9acc54ec
2 changed files with 16 additions and 0 deletions

View File

@@ -405,11 +405,14 @@ AudioOutput::Task()
break;
case Command::ENABLE:
last_error = nullptr;
try {
Enable();
} catch (const std::runtime_error &e) {
LogError(e);
fail_timer.Update();
last_error = std::current_exception();
}
CommandFinished();
@@ -421,11 +424,14 @@ AudioOutput::Task()
break;
case Command::OPEN:
last_error = nullptr;
try {
Open();
} catch (const std::runtime_error &e) {
LogError(e);
fail_timer.Update();
last_error = std::current_exception();
}
CommandFinished();