extern int ext_split_toggle(void *data);
-extern int ext_cw_key(void *data);
-
extern int ext_update_squelch(void *data);
extern int ext_sliders_update(void *data);
struct desc *cmd;
gint entry;
int i;
+ char *cp;
entry=0;
for (i=0; i<n_midi_devices; i++) {
setProperty(name,value);
sprintf(name,"midi[%d].entry[%d].channel[%d].action",i,entry,cmd->channel);
sprintf(value,"%s",ActionTable[cmd->action].str);
+ //
+ // ActionTable strings may contain '\n', convert this to '$'
+ //
+ cp=value;
+ while (*cp ) {
+ if (*cp == '\n') *cp='$';
+ cp++;
+ }
setProperty(name,value);
sprintf(name,"midi[%d].entry[%d].channel[%d].type",i,entry,cmd->channel);
sprintf(value,"%s",midi_types[cmd->type]);
gint fr1, fr2;
gint vfr1, vfr2;
int i,j;
+ char *cp;
get_midi_devices();
MidiReleaseCommands();
}
sprintf(name,"midi[%d].entry[%d].channel[%d].action",i,entry,channel);
value=getProperty(name);
+ // convert '$' back to '\n' in action name before comparing
+ cp=value;
+ while (*cp) {
+ if (*cp == '$') *cp='\n';
+ cp++;
+ }
action=NO_ACTION;
if(value) {
for(j=0;j<ACTIONS;j++) {