zynaddsubfx

ZynAddSubFX open source synthesizer
Log | Files | Refs | Submodules | LICENSE

commit e055056f93d2567841fd8fd287ee01bc8a1cbaf9
parent 123486d09d499c0b5aeb7fdff992f1982c9a989f
Author: fundamental <mark.d.mccurry@gmail.com>
Date:   Wed, 17 Aug 2016 15:39:06 -0400

OscilGen: Add /damage Msg When use-as-base/2sine

Diffstat:
Msrc/Synth/OscilGen.cpp | 18++++++++++++++++--
1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/src/Synth/OscilGen.cpp b/src/Synth/OscilGen.cpp @@ -93,7 +93,8 @@ const rtosc::Ports OscilGen::non_realtime_ports = { else { phase = rtosc_argument(m,0).i; //XXX hack hack - char *repath = strdup(d.loc); + char repath[128]; + strcpy(repath, d.loc); char *edit = strrchr(repath, '/')+1; strcpy(edit, "prepare"); OscilGen &o = *((OscilGen*)d.obj); @@ -117,7 +118,8 @@ const rtosc::Ports OscilGen::non_realtime_ports = { mag = rtosc_argument(m,0).i; //printf("setting magnitude\n\n"); //XXX hack hack - char *repath = strdup(d.loc); + char repath[128]; + strcpy(repath, d.loc); char *edit = strrchr(repath, '/')+1; strcpy(edit, "prepare"); OscilGen &o = *((OscilGen*)d.obj); @@ -161,10 +163,22 @@ const rtosc::Ports OscilGen::non_realtime_ports = { {"convert2sine:", rProp(non-realtime) rDoc("Translates waveform into FS"), NULL, [](const char *, rtosc::RtData &d) { ((OscilGen*)d.obj)->convert2sine(); + //XXX hack hack + char repath[128]; + strcpy(repath, d.loc); + char *edit = strrchr(repath, '/')+1; + *edit = 0; + d.reply("/damage", "s", repath); }}, {"use-as-base:", rProp(non-realtime) rDoc("Translates current waveform into base"), NULL, [](const char *, rtosc::RtData &d) { ((OscilGen*)d.obj)->useasbase(); + //XXX hack hack + char repath[128]; + strcpy(repath, d.loc); + char *edit = strrchr(repath, '/')+1; + *edit = 0; + d.reply("/damage", "s", repath); }}}; #define rForwardCb [](const char *msg, rtosc::RtData &d) {\