From 522ca271bfb851789aa437a5b88f980cb96916b2 Mon Sep 17 00:00:00 2001
From: "Tim E. Real" <termtech@rogers.com>
Date: Tue, 14 Dec 2010 01:11:01 +0000
Subject: Please see ChangeLog.

---
 muse2/synti/deicsonze/deicsonze.cpp      | 22 ++++++++++++++++------
 muse2/synti/deicsonze/deicsonzegui.cpp   |  3 +++
 muse2/synti/fluidsynth/fluidsynthgui.cpp |  1 +
 3 files changed, 20 insertions(+), 6 deletions(-)

(limited to 'muse2/synti')

diff --git a/muse2/synti/deicsonze/deicsonze.cpp b/muse2/synti/deicsonze/deicsonze.cpp
index 5ab39ee8..131a1742 100644
--- a/muse2/synti/deicsonze/deicsonze.cpp
+++ b/muse2/synti/deicsonze/deicsonze.cpp
@@ -160,6 +160,14 @@ DeicsOnze::DeicsOnze() : Mess(2) {
   _reverbFilter = new LowFilter();
   _delayFilter = new LowFilter();
   
+  // Moved here from below due to crash - _preset not initialized when loadConfiguration called. Tim.
+  _initialPreset = new 
+    Preset(new Subcategory(new Category(NULL, "NONE", 0), "NONE", 0), 0);
+  for(int c = 0; c < NBRCHANNELS; c++) {
+    _preset[c]=_initialPreset;
+    setPreset(c);
+  }
+  
   //Load configuration
   QString defaultConf = 
     (QString(getenv("HOME")) + QString("/." DEICSONZESTR ".dco"));
@@ -176,12 +184,14 @@ DeicsOnze::DeicsOnze() : Mess(2) {
   
   //loadSutulaPresets();
   
-  _initialPreset = new 
-    Preset(new Subcategory(new Category(NULL, "NONE", 0), "NONE", 0), 0);
-  for(int c = 0; c < NBRCHANNELS; c++) {
-    _preset[c]=_initialPreset;
-    setPreset(c);
-  }
+  // Moved above due to crash - _preset not initialized when loadConfiguration called. Tim.
+  //_initialPreset = new 
+  //  Preset(new Subcategory(new Category(NULL, "NONE", 0), "NONE", 0), 0);
+  //for(int c = 0; c < NBRCHANNELS; c++) {
+  //  _preset[c]=_initialPreset;
+  //  setPreset(c);
+  //}
+  
   //update display gui
   //update mastervol
   unsigned char dataMasterVol[2];
diff --git a/muse2/synti/deicsonze/deicsonzegui.cpp b/muse2/synti/deicsonze/deicsonzegui.cpp
index 4bdf0205..ba038b1b 100644
--- a/muse2/synti/deicsonze/deicsonzegui.cpp
+++ b/muse2/synti/deicsonze/deicsonzegui.cpp
@@ -1851,6 +1851,7 @@ void DeicsOnzeGui::categoryPopupMenu(const QPoint&) {
   categoryMenu->addAction(tr("Delete set"),
 			  this, SLOT(deleteSetDialog()));;
   categoryMenu->exec(QCursor::pos());
+  delete categoryMenu; // Tim.
 }
 void DeicsOnzeGui::subcategoryPopupMenu(const QPoint&) {
   QTreeWidgetItem* sub = subcategoryListView->currentItem();
@@ -1877,6 +1878,7 @@ void DeicsOnzeGui::subcategoryPopupMenu(const QPoint&) {
     loadItem->setEnabled(false);	
   }	
   subcategoryMenu->exec(QCursor::pos());
+  delete subcategoryMenu; // Tim.
 }
 void DeicsOnzeGui::presetPopupMenu(const QPoint&) {
   QTreeWidgetItem* pre = presetListView->currentItem();
@@ -1899,6 +1901,7 @@ void DeicsOnzeGui::presetPopupMenu(const QPoint&) {
     loadItem->setEnabled(false);	
   }	
   presetMenu->exec(QCursor::pos());
+  delete presetMenu;   // Tim.
 }
 
 //-----------------------------------------------------------
diff --git a/muse2/synti/fluidsynth/fluidsynthgui.cpp b/muse2/synti/fluidsynth/fluidsynthgui.cpp
index 18d5df59..343391f8 100644
--- a/muse2/synti/fluidsynth/fluidsynthgui.cpp
+++ b/muse2/synti/fluidsynth/fluidsynthgui.cpp
@@ -554,6 +554,7 @@ void FluidSynthGui::channelItemClicked(QTableWidgetItem* item)
                         item->setText(index == 0 ? "No" : "Yes" );
                         }
 	          }
+            delete popup;
             }
       }
 
-- 
cgit v1.2.3