On Mon, 30 Oct 2023 21:30:06 GMT, Phil Race <p...@openjdk.org> wrote:

>> Alec Su has updated the pull request incrementally with one additional 
>> commit since the last revision:
>> 
>>   Code cleanup
>
>> It use `dwBytesRecorded` in `MIDIHDR` structure to indicate the actual size 
>> of the data
>> However, `midiOutLongMsg()` ignores `dwBytesRecorded`, although it did not 
>> mentioned in the documentation.
> 
> 
> This seems to be documented by Microsoft only in the most obscure fashion.
> 
> If you look at the doc for midiOutPrepareHeader
> https://learn.microsoft.com/en-us/previous-versions/dd798477(v=vs.85)
> it says "Before calling the function, set the lpData, dwBufferLength, and 
> dwFlags members of the 
> [MIDIHDR](https://learn.microsoft.com/en-us/previous-versions/dd798449(v=vs.85))
>  structure"
> 
> So no mention of dwBytesRecorded.
> 
> WAVEHDR is a very similar struct to MIDIHDR and if you look at this WAVEHDR 
> doc it says
> 
> https://learn.microsoft.com/en-us/previous-versions/dd743837(v=vs.85)
> 
>     dwBytesRecorded
>     When the header is used in input, specifies how much data is in the 
> buffer.
> 
> So I infer the same is true for MIDI
> 
> Therefore dwBytesRecorded is only used for input and dwBufferLength is what's 
> important for output.

@prrace @mrserb Thank you very much.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/16399#issuecomment-1823098255

Reply via email to