Skip to content

Commit 9fbb588

Browse files
authored
Merge pull request #317 from tne-lab/rec-thread-on-off-fix
Prevent crash when recording again after recording session with thread turned off
2 parents 59b5184 + 743c6e2 commit 9fbb588

2 files changed

Lines changed: 4 additions & 4 deletions

File tree

Source/Processors/RecordNode/EventQueue.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,14 +77,14 @@ class EventQueue
7777
void reset()
7878
{
7979
m_data.clear();
80+
m_fifo.reset();
8081
m_data.resize(m_fifo.getTotalSize());
8182
}
8283

8384
void resize(int size)
8485
{
85-
m_data.clear();
8686
m_fifo.setTotalSize(size);
87-
m_data.resize(size);
87+
reset();
8888
}
8989

9090
void addEvent(const EventClass& ev, int64 t, int extra = 0)

Source/Processors/RecordNode/RecordNode.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -476,7 +476,7 @@ void RecordNode::handleEvent(const EventChannel* eventInfo, const MidiMessage& e
476476
eventIndex = getEventChannelIndex(Event::getSourceIndex(event), Event::getSourceID(event), Event::getSubProcessorIdx(event));
477477
else
478478
eventIndex = -1;
479-
if (isRecording)
479+
if (isRecording && shouldRecord)
480480
m_eventQueue->addEvent(event, timestamp, eventIndex);
481481
}
482482
}
@@ -565,7 +565,7 @@ int RecordNode::addSpikeElectrode(const SpikeChannel* elec)
565565

566566
void RecordNode::writeSpike(const SpikeEvent* spike, const SpikeChannel* spikeElectrode)
567567
{
568-
if (isRecording)
568+
if (isRecording && shouldRecord)
569569
{
570570
int electrodeIndex = getSpikeChannelIndex(spikeElectrode->getSourceIndex(), spikeElectrode->getSourceNodeID(), spikeElectrode->getSubProcessorIdx());
571571
if (electrodeIndex >= 0)

0 commit comments

Comments
 (0)