summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/drumgizmo.cc7
-rw-r--r--src/drumgizmo.h2
2 files changed, 9 insertions, 0 deletions
diff --git a/src/drumgizmo.cc b/src/drumgizmo.cc
index f8f30b8..44cd73c 100644
--- a/src/drumgizmo.cc
+++ b/src/drumgizmo.cc
@@ -84,6 +84,13 @@ bool DrumGizmo::loadkit(std::string file)
return false;
}
+ // Check if there is enough free RAM to load the drumkit.
+ if(!memchecker.enoughFreeMemory(kit))
+ {
+ ERR(drumgizmo, "Not enough free RAM to load the drumkit.");
+ return false;
+ }
+
loader.loadKit(&kit);
#ifdef WITH_RESAMPLER
diff --git a/src/drumgizmo.h b/src/drumgizmo.h
index 2778092..3f84fdd 100644
--- a/src/drumgizmo.h
+++ b/src/drumgizmo.h
@@ -35,6 +35,7 @@
#include "events.h"
#include "audiofile.h"
#include "drumkit.h"
+#include "memchecker.h"
#include "drumkitloader.h"
#include "audiocache.h"
@@ -101,6 +102,7 @@ protected:
AudioCache audioCache;
DrumKit kit;
+ Memchecker memchecker;
size_t framesize;
bool freewheel;