summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/audiocache.cc4
-rw-r--r--src/audiocache.h1
2 files changed, 3 insertions, 2 deletions
diff --git a/src/audiocache.cc b/src/audiocache.cc
index a5fb0db..a366423 100644
--- a/src/audiocache.cc
+++ b/src/audiocache.cc
@@ -168,7 +168,6 @@ sample_t* AudioCache::next(cacheid_t id, size_t& size)
}
c.localpos += framesize;
-
return s;
}
@@ -255,10 +254,11 @@ void AudioCache::setFrameSize(size_t framesize)
// NOTE: Not threaded...
//std::lock_guard<AudioCacheIDManager> id_manager_lock(id_manager);
- if(framesize > this->framesize)
+ if(framesize > nodata_framesize)
{
delete[] nodata;
nodata = new sample_t[framesize];
+ nodata_framesize = framesize;
for(size_t i = 0; i < framesize; ++i)
{
diff --git a/src/audiocache.h b/src/audiocache.h
index 5a4577f..d0be509 100644
--- a/src/audiocache.h
+++ b/src/audiocache.h
@@ -106,6 +106,7 @@ public:
private:
size_t framesize{0};
sample_t* nodata{nullptr};
+ size_t nodata_framesize{0};
size_t number_of_underruns{0};
AudioCacheIDManager id_manager;