Skip to content

Commit

Permalink
Merge pull request #52 from theGreatWhiteShark/phil-alsa-port-naming
Browse files Browse the repository at this point in the history
pm_linux: set port name prior to creation
  • Loading branch information
rbdannenberg committed Jun 17, 2023
2 parents 0e1588f + 1ba387c commit 7d00346
Showing 1 changed file with 12 additions and 9 deletions.
21 changes: 12 additions & 9 deletions pm_linux/pmlinuxalsa.c
Original file line number Diff line number Diff line change
Expand Up @@ -194,18 +194,19 @@ static PmError alsa_out_open(PmInternal *midi, void *driverInfo)
snd_seq_port_info_set_type(pinfo, SND_SEQ_PORT_TYPE_MIDI_GENERIC |
SND_SEQ_PORT_TYPE_APPLICATION);
snd_seq_port_info_set_port_specified(pinfo, 1);

if (port_name) {
snd_seq_port_info_set_name(pinfo, port_name);
VERBOSE printf("pm_out_open, pinfo %p, port_name %s\n",
pinfo, port_name);
}

err = snd_seq_create_port(seq, pinfo);
if (err < 0) goto free_ainfo;
} else if (snd_seq_get_port_info(seq, ainfo->port, pinfo)) {
pinfo = NULL;
goto free_ainfo;
}

if (port_name) {
snd_seq_port_info_set_name(pinfo, port_name);
printf("pm_out_open, pinfo %p, port_name %s\n",
pinfo, port_name);
}

err = snd_midi_event_new(PM_DEFAULT_SYSEX_BUFFER_SIZE, &ainfo->parser);
if (err < 0) goto free_this_port;
Expand Down Expand Up @@ -406,6 +407,11 @@ static PmError alsa_in_open(PmInternal *midi, void *driverInfo)
snd_seq_port_info_set_type(pinfo, SND_SEQ_PORT_TYPE_MIDI_GENERIC |
SND_SEQ_PORT_TYPE_APPLICATION);
snd_seq_port_info_set_port_specified(pinfo, 1);

if (port_name) {
snd_seq_port_info_set_name(pinfo, port_name);
}

err = snd_seq_create_port(seq, pinfo);
if (err < 0) goto free_queue;

Expand All @@ -429,9 +435,6 @@ static PmError alsa_in_open(PmInternal *midi, void *driverInfo)
err = snd_seq_subscribe_port(seq, sub);
if (err < 0) goto free_this_port; /* clean up and return on error */
}
if (port_name) {
snd_seq_port_info_set_name(pinfo, port_name);
}
return pmNoError;
free_this_port:
snd_seq_delete_port(seq, ainfo->this_port);
Expand Down

0 comments on commit 7d00346

Please sign in to comment.