restart non-RT locate if a new request has been processed by RT context since we started
This commit is contained in:
parent
58ea3d3d8c
commit
6fb212a6f6
@ -584,10 +584,25 @@ Session::non_realtime_locate ()
|
|||||||
|
|
||||||
{
|
{
|
||||||
boost::shared_ptr<RouteList> rl = routes.reader();
|
boost::shared_ptr<RouteList> rl = routes.reader();
|
||||||
|
|
||||||
|
restart:
|
||||||
|
const framepos_t tf = _transport_frame;
|
||||||
|
|
||||||
|
cerr << "\n\n >>> START Non-RT locate on routes to " << tf << "\n\n";
|
||||||
|
|
||||||
for (RouteList::iterator i = rl->begin(); i != rl->end(); ++i) {
|
for (RouteList::iterator i = rl->begin(); i != rl->end(); ++i) {
|
||||||
(*i)->non_realtime_locate (_transport_frame);
|
(*i)->non_realtime_locate (_transport_frame);
|
||||||
|
if (tf != _transport_frame) {
|
||||||
|
/* new locate request arrived while processing
|
||||||
|
this one. start over.
|
||||||
|
*/
|
||||||
|
cerr << "\n\n\n\n RESTART LOCATE @ " << _transport_frame << endl;
|
||||||
|
goto restart;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
cerr << "\n\n <<< DONE Non-RT locate on routes\n\n";
|
||||||
|
}
|
||||||
{
|
{
|
||||||
VCAList v = _vca_manager->vcas ();
|
VCAList v = _vca_manager->vcas ();
|
||||||
for (VCAList::const_iterator i = v.begin(); i != v.end(); ++i) {
|
for (VCAList::const_iterator i = v.begin(); i != v.end(); ++i) {
|
||||||
|
Loading…
Reference in New Issue
Block a user