aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/xsample/source
diff options
context:
space:
mode:
Diffstat (limited to 'externals/grill/xsample/source')
-rw-r--r--externals/grill/xsample/source/groove.cpp3
-rw-r--r--externals/grill/xsample/source/main.cpp2
-rw-r--r--externals/grill/xsample/source/main.h2
3 files changed, 5 insertions, 2 deletions
diff --git a/externals/grill/xsample/source/groove.cpp b/externals/grill/xsample/source/groove.cpp
index ccea67df..c4051714 100644
--- a/externals/grill/xsample/source/groove.cpp
+++ b/externals/grill/xsample/source/groove.cpp
@@ -56,6 +56,7 @@ public:
void ms_xfade(int xf)
{
+ if(xf < 0 || xf > xsf_inside) xf = xsf_keeplooppos;
xfade = (xs_fade)xf;
Update(xsc_fade,true);
}
@@ -263,6 +264,8 @@ void xgroove::ms_xzone(float xz)
void xgroove::ms_xshape(int sh)
{
+ if(sh < 0 || sh > xss_hsine) sh = xss_lin;
+
xshape = (xs_shape)sh;
switch(xshape) {
case xss_qsine: znmul = fade_qsine; break;
diff --git a/externals/grill/xsample/source/main.cpp b/externals/grill/xsample/source/main.cpp
index a19dcb2c..a948c056 100644
--- a/externals/grill/xsample/source/main.cpp
+++ b/externals/grill/xsample/source/main.cpp
@@ -56,7 +56,7 @@ xsample::xsample():
unitmode(xsu_sample), // PD defaults to samples
#endif
sclmode(xss_unitsinbuf),
- curmin(0),curmax(1<<(sizeof(curmax)*8-2))
+ curmin(0),curmax(1L<<(sizeof(curmax)*8-2))
{}
xsample::~xsample() {}
diff --git a/externals/grill/xsample/source/main.h b/externals/grill/xsample/source/main.h
index 9cc29e5b..ad41ffbf 100644
--- a/externals/grill/xsample/source/main.h
+++ b/externals/grill/xsample/source/main.h
@@ -15,7 +15,7 @@ WARRANTIES, see the file, "license.txt," in this distribution.
#error You need at least flext version 0.5.0
#endif
-#define XSAMPLE_VERSION "0.3.1pre6"
+#define XSAMPLE_VERSION "0.3.1pre7"
// most compilers are somehow broken - in other words - can't handle all C++ features