On Sat, 07 May 2011 17:16:25 +0100, Richard Shann wrote
> I am exceedingly puzzled by this: my code does not have such a
> static -
No - this is my quick hack-up to show an alternative to generating and
then evaluating strings (remember: eval is evil :-)
> it seems to be some version of the code developed by
> Jeremiah to fix memory leaks. But I don't know where it has come
> from, as I have just committed and so must be up-to-date. Where have
> you gotten this from?
> (as you say it is wrong, a regression on the release) Richard
No - I deliberately did put in the static to optimize method lookup.
Of course - if you feel the need to make Midi-shortcut::controller
changeable at runtime just leave out the static declaration.
Cheers and sorry for the confusion
RalfD
> On Sat, 2011-05-07 at 12:06 +0000, Ralf Mattes wrote:
> > On Sat, 07 May 2011 11:58:16 +0000, Ralf Mattes wrote:
> >
> > >
> > > gchar *get_midi_control_command(guchar type, guchar value) {
> > > static SCM lookup_fun = scm_c_lookup("MIDI-shortcut::controller");
> > > gchar r_val = NULL;
> > > SCM res;
> > >
> > > scm_dynwind_begin(0);
> > > res = scm_call_2(lookup_fun, SCM_I_MAKINUM(type),
SCM_I_MAKINUM(value));
> > > if(scm_is_string(res)) {
> > > SCM2LSTRING(r_val, res);
> > > }
> > > scm_dynwind_end();
> > > return r_val;
> > > }
> >
> > Just one more comment about this code: as a result the value of
MIDI-shortcut::controller
> > is looked up only once, hence runtime redefinition won't work. If this is
wanted, just
> > remove the static from the definition of lookup_fun.
> >
> > Cheers, RalfD
> >
> > >
> > > Cheers, RalfD
> > >
> > >> HTH
> > >> Richard
> > >>
> > >>
> > >>
> > >>
> >
> >
> >
> > _______________________________________________
> > Denemo-devel mailing list
> > [email protected]
> > https://lists.gnu.org/mailman/listinfo/denemo-devel
--
R. Mattes -
Hochschule fuer Musik Freiburg
[email protected]
_______________________________________________
Denemo-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/denemo-devel