panda: non-returning openocd-loop at terminate

Previously for correct termination, the PandaController called
the finish-function of the openocd wrapper, invoked a coroutine
switch and waited for the openocd wrapper to finish up and switch
coroutine again, so the PandaController could exit with correct
exitStatus. Now the openocd-wrapper directly exits with chosen
exit status.

Change-Id: I8d318a4143c53340896ccee4d059a0d79fdcfe89
This commit is contained in:
Lars Rademacher
2013-10-24 11:05:38 +02:00
parent 5638a7473e
commit 582459c5bb
4 changed files with 8 additions and 11 deletions

View File

@ -9,7 +9,6 @@ set(PROTOS
FailControlMessage.proto
DatabaseCampaignMessage.proto
TracePlugin.proto
HopChain.proto
)
#### PROTOBUFS ####

View File

@ -89,12 +89,12 @@ void PandaController::reboot()
void PandaController::terminate(int exCode)
{
oocdw_finish();
oocdw_finish(exCode);
/*
* Resume to let OpenOCD terminate properly
* This call does not return!
*/
m_Flows.resume();
SimulatorController::terminate(exCode);
}
} // end-of-namespace: fail