Rémi Bernon (@rbernon) commented about dlls/dmime/midi.c:
+ + if (is_event_fixed_length(event->status, event->type)) + { + if (length > sizeof(event->data.fixed.byte)) + { + WARN("Invalid MIDI meta event length %lu for type %#02x\n", length, event->type); + return E_FAIL; + } + hr = stream_read_accumulate(stream, &event->data.fixed.byte[0], length, total_bytes_read); + if (hr == S_OK) + { + if (event->type == MIDI_META_SET_TEMPO) + { + event->data.integer = (event->data.fixed.byte[0] << 16) | + (event->data.fixed.byte[1] << 8) | event->data.fixed.byte[2]; + if (event->data.integer == 0)
event->data.integer = (event->data.fixed.byte[0] << 16) |
(event->data.fixed.byte[1] << 8) |
event->data.fixed.byte[2];
if (event->data.integer == 0)
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/4982#note_60274