| Index: media/midi/midi_manager_win.cc
|
| diff --git a/media/midi/midi_manager_win.cc b/media/midi/midi_manager_win.cc
|
| index 5c81386fc3fdea580d431b8a29c47ee8e5ebca52..884304004d4dbdf16d51484b20e5f4c71d81d6b8 100644
|
| --- a/media/midi/midi_manager_win.cc
|
| +++ b/media/midi/midi_manager_win.cc
|
| @@ -297,6 +297,12 @@ std::string GetManufacturerName(const MidiDeviceInfo& info) {
|
| }
|
| }
|
|
|
| +bool IsUnsupportedDevice(const MidiDeviceInfo& info) {
|
| + return info.manufacturer_id == MM_MICROSOFT &&
|
| + (info.product_id == MM_MSFT_WDMAUDIO_MIDIOUT ||
|
| + info.product_id == MM_MSFT_GENERIC_MIDISYNTH);
|
| +}
|
| +
|
| using PortNumberCache = base::hash_map<
|
| MidiDeviceInfo,
|
| std::priority_queue<uint32, std::vector<uint32>, std::greater<uint32>>,
|
| @@ -799,6 +805,8 @@ class MidiServiceWinImpl : public MidiServiceWin,
|
| make_scoped_refptr(new MidiOutputDeviceState(MidiDeviceInfo(caps)));
|
| state->midi_handle = midi_out_handle;
|
| const auto& state_device_info = state->device_info;
|
| + if (IsUnsupportedDevice(state_device_info))
|
| + return;
|
| bool add_new_port = false;
|
| uint32 port_number = 0;
|
| {
|
|
|