mirror of
https://github.com/ElvishArtisan/rivendell.git
synced 2026-01-16 09:31:15 +01:00
2022-11-15 Fred Gleason <fredg@paravelsystems.com>
* Fixed a regression in rdcatchd(8) that caused conflicting record events to deadlock. Signed-off-by: Fred Gleason <fredg@paravelsystems.com>
This commit is contained in:
@@ -573,11 +573,24 @@ void MainObject::engineData(int id)
|
||||
return;
|
||||
}
|
||||
|
||||
//
|
||||
// Check for Record Deck Availability
|
||||
//
|
||||
if(catch_events[event].type()==RDRecording::Recording) {
|
||||
if(catch_record_deck_status[catch_events[event].channel()-1]!=
|
||||
RDDeck::Idle) {
|
||||
rda->syslog(LOG_WARNING,"record deck R%d is busy for event %d, skipping",
|
||||
catch_events[event].channel(),
|
||||
catch_events[event].id());
|
||||
WriteExitCode(event,RDRecording::DeviceBusy);
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
//
|
||||
// Check for Playout Deck Availability
|
||||
//
|
||||
if(catch_events[event].type()==RDRecording::Playout) {
|
||||
rda->syslog(LOG_NOTICE,"checking channel: %d: %d",catch_events[event].channel(),catch_playout_deck_status[catch_events[event].channel()-129]);
|
||||
if(catch_playout_deck_status[catch_events[event].channel()-129]!=
|
||||
RDDeck::Idle) {
|
||||
rda->syslog(LOG_WARNING,"playout deck P%d is busy for event %d, skipping",
|
||||
|
||||
Reference in New Issue
Block a user