diff --git a/Source/Processors/Editors/PhaseDetectorEditor.cpp b/Source/Processors/Editors/PhaseDetectorEditor.cpp
index 0d580806e8b1c62668f62a429b942f7339b77f4c..f26a1b6d288b09a0dd72a789b9b27cdd51b6d9e1 100644
--- a/Source/Processors/Editors/PhaseDetectorEditor.cpp
+++ b/Source/Processors/Editors/PhaseDetectorEditor.cpp
@@ -161,7 +161,7 @@ void PhaseDetectorEditor::addDetector()
 
 }
 
-void PhaseDetectorEditor::saveEditorParameters(XmlElement* xml)
+void PhaseDetectorEditor::saveCustomParameters(XmlElement* xml)
 {
 
     xml->setAttribute("Type", "PhaseDetectorEditor");
@@ -176,7 +176,7 @@ void PhaseDetectorEditor::saveEditorParameters(XmlElement* xml)
     }
 }
 
-void PhaseDetectorEditor::loadEditorParameters(XmlElement* xml)
+void PhaseDetectorEditor::loadCustomParameters(XmlElement* xml)
 {
 
     int i = 0;
diff --git a/Source/Processors/Editors/PhaseDetectorEditor.h b/Source/Processors/Editors/PhaseDetectorEditor.h
index a42e02ea503e2e41c086e2ffdfbd3cf89882c9ad..6c0d82c66743fce1158b3d91dc889164c49b57da 100644
--- a/Source/Processors/Editors/PhaseDetectorEditor.h
+++ b/Source/Processors/Editors/PhaseDetectorEditor.h
@@ -56,8 +56,8 @@ public:
 
     void updateSettings();
 
-    void saveEditorParameters(XmlElement* xml);
-    void loadEditorParameters(XmlElement* xml);
+    void saveCustomParameters(XmlElement* xml);
+    void loadCustomParameters(XmlElement* xml);
 
 private:
 
diff --git a/Source/Processors/Editors/PulsePalOutputEditor.cpp b/Source/Processors/Editors/PulsePalOutputEditor.cpp
index 1ba458f1e094007f056c22cafdacd7cd38bd6a09..91390a80a5f205b9e81035389e6a13352407453f 100644
--- a/Source/Processors/Editors/PulsePalOutputEditor.cpp
+++ b/Source/Processors/Editors/PulsePalOutputEditor.cpp
@@ -55,7 +55,7 @@ PulsePalOutputEditor::~PulsePalOutputEditor()
 
 }
 
-void PulsePalOutputEditor::saveEditorParameters(XmlElement* xml)
+void PulsePalOutputEditor::saveCustomParameters(XmlElement* xml)
 {
 
     xml->setAttribute("Type", "PulsePalOutputEditor");
@@ -71,7 +71,7 @@ void PulsePalOutputEditor::saveEditorParameters(XmlElement* xml)
     
 }
 
-void PulsePalOutputEditor::loadEditorParameters(XmlElement* xml)
+void PulsePalOutputEditor::loadCustomParameters(XmlElement* xml)
 {
 
     forEachXmlChildElement(*xml, xmlNode)
diff --git a/Source/Processors/Editors/PulsePalOutputEditor.h b/Source/Processors/Editors/PulsePalOutputEditor.h
index 95d8e96f1141994c7aa5baee838c0d7ff1e645a3..a7036704d38740a221c44e3525f753daa8c966ef 100644
--- a/Source/Processors/Editors/PulsePalOutputEditor.h
+++ b/Source/Processors/Editors/PulsePalOutputEditor.h
@@ -54,8 +54,8 @@ private:
 
     PulsePal* pulsePal;
 
-    void saveEditorParameters(XmlElement* xml);
-    void loadEditorParameters(XmlElement* xml);
+    void saveCustomParameters(XmlElement* xml);
+    void loadCustomParameters(XmlElement* xml);
 
     JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(PulsePalOutputEditor);
 
diff --git a/Source/Processors/Editors/VisualizerEditor.cpp b/Source/Processors/Editors/VisualizerEditor.cpp
index 18aa344ebfb1e6776677ee46d075cddd2805e47f..3d6c24caae21811709edb3e68f33753aef16e361 100755
--- a/Source/Processors/Editors/VisualizerEditor.cpp
+++ b/Source/Processors/Editors/VisualizerEditor.cpp
@@ -190,7 +190,7 @@ void VisualizerEditor::buttonEvent(Button* button)
                 tabIndex = -1;
             }
 
-            if (dataWindow == nullptr)
+            if (dataWindow == nullptr) // have we created a window already?
             {
 
                 dataWindow = new DataWindow(windowSelector, tabText);
@@ -256,7 +256,7 @@ void VisualizerEditor::buttonEvent(Button* button)
 
 }
 
-void VisualizerEditor::saveEditorParameters(XmlElement* xml)
+void VisualizerEditor::saveCustomParameters(XmlElement* xml)
 {
 
     xml->setAttribute("Type", "Visualizer");
@@ -282,7 +282,7 @@ void VisualizerEditor::saveEditorParameters(XmlElement* xml)
 
 }
 
-void VisualizerEditor::loadEditorParameters(XmlElement* xml)
+void VisualizerEditor::loadCustomParameters(XmlElement* xml)
 {
 
     forEachXmlChildElement(*xml, xmlNode)
@@ -305,10 +305,13 @@ void VisualizerEditor::loadEditorParameters(XmlElement* xml)
             if (windowState)
             {
                 windowSelector->setToggleState(true,true);
-                dataWindow->setBounds(xmlNode->getIntAttribute("x"),
-                                      xmlNode->getIntAttribute("y"),
-                                      xmlNode->getIntAttribute("width"),
-                                      xmlNode->getIntAttribute("height"));
+				if (dataWindow != nullptr)
+				{
+					dataWindow->setBounds(xmlNode->getIntAttribute("x"),
+						                  xmlNode->getIntAttribute("y"),
+							              xmlNode->getIntAttribute("width"),
+								          xmlNode->getIntAttribute("height"));
+				}
 
             }
 
diff --git a/Source/Processors/Editors/VisualizerEditor.h b/Source/Processors/Editors/VisualizerEditor.h
index f64530e8f388e30863cc200733fff30482ca9e7e..b15139d80d205fd12defe9f05cf8b7cdd66f2886 100755
--- a/Source/Processors/Editors/VisualizerEditor.h
+++ b/Source/Processors/Editors/VisualizerEditor.h
@@ -80,8 +80,8 @@ public:
 
     void updateVisualizer();
 
-    void saveEditorParameters(XmlElement* xml);
-    void loadEditorParameters(XmlElement* xml);
+    void saveCustomParameters(XmlElement* xml);
+    void loadCustomParameters(XmlElement* xml);
 
     virtual void saveVisualizerParameters(XmlElement* xml);
     virtual void loadVisualizerParameters(XmlElement* xml);