changeset 80:d99d67a5b93a

* Fix crash in spectrogram layer when replacing model * Change sample player's sample path to a single sample directory. This makes it immune to OS path separator differences, and ensures it can reject configure calls that try to set a nonexistent directory. Reloading play parameters (e.g. sample program) should now work. * some win32 fixes.
author Chris Cannam
date Wed, 26 Apr 2006 16:00:13 +0000
parents 19bf27e4fb29
children b9f71b8ae21e
files layer/SpectrogramLayer.cpp
diffstat 1 files changed, 2 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/layer/SpectrogramLayer.cpp	Thu Apr 13 18:29:10 2006 +0000
+++ b/layer/SpectrogramLayer.cpp	Wed Apr 26 16:00:13 2006 +0000
@@ -114,11 +114,6 @@
     m_mutex.lock();
     m_cacheInvalid = true;
     m_model = model;
-    delete m_cache; //!!! hang on, this isn't safe to do here is it? 
-		    // we need some sort of guard against the fill
-		    // thread trying to read the defunct model too.
-		    // should we use a scavenger?
-    m_cache = 0;
     m_mutex.unlock();
 
     if (!m_model || !m_model->isOK()) return;
@@ -1375,8 +1370,8 @@
 	    // in the model while we aren't holding a lock.  It's safe
 	    // for us to continue to use the "old" values if that
 	    // happens, because they will continue to match the
-	    // dimensions of the actual cache (which we manage, not
-	    // the model).
+	    // dimensions of the actual cache (which this thread
+	    // manages, not the layer's).
 	    m_layer.m_mutex.unlock();
 
 	    double *input = (double *)