diff --git a/Source/Processors/PSTH/PeriStimulusTimeHistogramNode.cpp b/Source/Processors/PSTH/PeriStimulusTimeHistogramNode.cpp
index 3aa78eb1f00041fb0f5d7c618082e53eca96e898..d65d36c06fda1825ca3da9f2db5c452248082060 100644
--- a/Source/Processors/PSTH/PeriStimulusTimeHistogramNode.cpp
+++ b/Source/Processors/PSTH/PeriStimulusTimeHistogramNode.cpp
@@ -114,7 +114,6 @@ void PeriStimulusTimeHistogramNode::allocateTrialCircularBuffer()
 
 void PeriStimulusTimeHistogramNode::updateSettings()
 {
-	delete trialCircularBuffer;
 	trialCircularBuffer = nullptr;
 	if (trialCircularBuffer  == nullptr && getSampleRate() > 0 && getNumInputs() > 0)
 	{
@@ -388,7 +387,6 @@ void PeriStimulusTimeHistogramNode::modifyTimeRange(double preSec_, double postS
 			TrialCircularBufferParams params = trialCircularBuffer->getParams();
 			params.preSec = preSec_;
 			params.postSec = postSec_;
-			delete trialCircularBuffer;
 			trialCircularBuffer = new TrialCircularBuffer(params);
 			trialCircularBuffer->syncInternalDataStructuresWithSpikeSorter(electrodes);
 
diff --git a/Source/Processors/PSTH/PeriStimulusTimeHistogramNode.h b/Source/Processors/PSTH/PeriStimulusTimeHistogramNode.h
index f5c3fdc8e46517fd0077bd781e5f57e0b3afdc82..f2b798825c7b8829ea176e1102b4bb0fc7415ff4 100644
--- a/Source/Processors/PSTH/PeriStimulusTimeHistogramNode.h
+++ b/Source/Processors/PSTH/PeriStimulusTimeHistogramNode.h
@@ -80,7 +80,7 @@ public:
 	void loadCustomParametersFromXml();
 	void modifyTimeRange(double preSec_, double postSec_);
 
-	TrialCircularBuffer *trialCircularBuffer;
+	ScopedPointer<TrialCircularBuffer> trialCircularBuffer;
 	bool saveTTLs, saveNetworkEvents,saveEyeTracking ;
 	int spikeSavingMode;
 	bool saveNetworkEventsWhenNotRecording;