diff --git a/Source/Plugins/SpikeSorter/SpikeSortBoxes.cpp b/Source/Plugins/SpikeSorter/SpikeSortBoxes.cpp index 07fa1baa789510ac08c5b72f4cc5e01e650f3a3e..a2191529d4295cabb2c1ac594fe83c2a28bc06f3 100644 --- a/Source/Plugins/SpikeSorter/SpikeSortBoxes.cpp +++ b/Source/Plugins/SpikeSorter/SpikeSortBoxes.cpp @@ -882,6 +882,7 @@ void SpikeSortBoxes::projectOnPrincipalComponents(SorterSpikePtr so) if ((spikeBufferIndex == bufferSize -1 && !bPCAcomputed && !bPCAJobSubmitted) || bRePCA) { bPCAJobSubmitted = true; + bPCAcomputed = false; bRePCA = false; // submit a new job to compute the spike buffer. PCAJobPtr job = new PCAjob(spikeBuffer,pc1,pc2, pc1min, pc2min, pc1max, pc2max, bPCAjobFinished); diff --git a/Source/Plugins/SpikeSorter/SpikeSorter.cpp b/Source/Plugins/SpikeSorter/SpikeSorter.cpp index fc182f087205c82a784bcc2c3143c09ee523ebe0..b95f8cede44d2347326b83b0b85f0ca946c1dd46 100644 --- a/Source/Plugins/SpikeSorter/SpikeSorter.cpp +++ b/Source/Plugins/SpikeSorter/SpikeSorter.cpp @@ -463,6 +463,7 @@ bool SpikeSorter::addElectrode(int nChans, String name, double Depth) eventlog += String(chans[k])+ " " + name; //addNetworkEventToQueue(StringTS(eventlog)); + delete[] chans; resetElectrode(newElectrode); electrodes.add(newElectrode); @@ -1302,6 +1303,9 @@ void SpikeSorter::loadCustomParametersFromXml() newElectrode->thresholds[k] = thres[k]; newElectrode->isActive[k] = isActive[k]; } + delete[] channels; + delete[] thres; + delete[] isActive; newElectrode->advancerID = advancerID; newElectrode->depthOffsetMM = depthOffsetMM;