Comment 2 for bug 635872

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Hey Guy,

Thanks for the patch! A couple notes:

The check for events coming during the processing time should be done within the if (m_pInputStream) block in case m_pInputStream is NULL.

The m_sPMLock is not unlocked before usleep'ing, so multiple PortMIDI devices may fight over this lock since it is shared across all PortMIDI devices.

Are all PortMIDI errors (Pm_Poll or Pm_Read returning <0) unrecoverable? Given the error checking you added, it will break out of the processing loop, causing the device to need to be re-enabled in the preferences.

I've fixed 1+2 and once I learn the answer to 3 I'll commit this.

RJ

Thanks,
RJ