2017-05-02 Fred Gleason <fredg@paravelsystems.com>

* Fixed a bug that caused RDCartSlots to fail to rotate cuts when
	replaying a cart without a reload.
This commit is contained in:
Fred Gleason 2017-05-02 11:47:28 -04:00
parent 4a3826bc99
commit 564414cbe3
2 changed files with 11 additions and 3 deletions

View File

@ -15751,3 +15751,6 @@
* Added a '--enable-rdxport-debug' switch to 'configure.ac'. * Added a '--enable-rdxport-debug' switch to 'configure.ac'.
2017-04-20 Fred Gleason <fredg@paravelsystems.com> 2017-04-20 Fred Gleason <fredg@paravelsystems.com>
* Incremented the package version to 2.15.3int04. * Incremented the package version to 2.15.3int04.
2017-05-02 Fred Gleason <fredg@paravelsystems.com>
* Fixed a bug that caused RDCartSlots to fail to rotate cuts when
replaying a cart without a reload.

View File

@ -2,7 +2,7 @@
// //
// The cart slot widget. // The cart slot widget.
// //
// (C) Copyright 2012-2014,2016 Fred Gleason <fredg@paravelsystems.com> // (C) Copyright 2012-2014,2016-2017 Fred Gleason <fredg@paravelsystems.com>
// //
// This program is free software; you can redistribute it and/or modify // This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License version 2 as // it under the terms of the GNU General Public License version 2 as
@ -285,7 +285,6 @@ bool RDCartSlot::play()
slot_deck->play(slot_logline->playPosition()); slot_deck->play(slot_logline->playPosition());
} }
slot_logline->setStartTime(RDLogLine::Actual,QTime::currentTime()); slot_logline->setStartTime(RDLogLine::Actual,QTime::currentTime());
// LogPlayout(RDAirPlayConf::TrafficStart);
ret=true; ret=true;
} }
} }
@ -305,7 +304,9 @@ bool RDCartSlot::stop()
if(slot_logline->cartNumber()!=0) { if(slot_logline->cartNumber()!=0) {
slot_stop_requested=true; slot_stop_requested=true;
slot_deck->stop(); slot_deck->stop();
// LogPlayout(RDAirPlayConf::TrafficStop); RDCart *cart=new RDCart(slot_logline->cartNumber());
setCart(cart);
delete cart;
ret=true; ret=true;
} }
return ret; return ret;
@ -474,6 +475,7 @@ void RDCartSlot::stateChangedData(int id,RDPlayDeck::State state)
{ {
//printf("stateChangedData(%d,%d)\n",id,state); //printf("stateChangedData(%d,%d)\n",id,state);
short lvls[2]={-10000,-10000}; short lvls[2]={-10000,-10000};
RDCart *cart=NULL;
switch(state) { switch(state) {
case RDPlayDeck::Playing: case RDPlayDeck::Playing:
@ -501,6 +503,9 @@ void RDCartSlot::stateChangedData(int id,RDPlayDeck::State state)
if(!slot_stop_requested) { if(!slot_stop_requested) {
switch(slot_options->stopAction()) { switch(slot_options->stopAction()) {
case RDSlotOptions::RecueOnStop: case RDSlotOptions::RecueOnStop:
cart=new RDCart(slot_logline->cartNumber());
setCart(cart);
delete cart;
break; break;
case RDSlotOptions::UnloadOnStop: case RDSlotOptions::UnloadOnStop: