Index: Source/modules/webmidi/MIDIInput.cpp |
diff --git a/Source/modules/webmidi/MIDIInput.cpp b/Source/modules/webmidi/MIDIInput.cpp |
index a5fd6ce552c1301056c82b69187648308dad5f14..e6fefa4b66894201be8c23f98ce91d14c780bbab 100644 |
--- a/Source/modules/webmidi/MIDIInput.cpp |
+++ b/Source/modules/webmidi/MIDIInput.cpp |
@@ -30,6 +30,8 @@ |
#include "config.h" |
#include "modules/webmidi/MIDIInput.h" |
+ |
+#include "modules/webmidi/MIDIAccess.h" |
#include "modules/webmidi/MIDIMessageEvent.h" |
namespace WebCore { |
@@ -59,8 +61,8 @@ void MIDIInput::didReceiveMIDIData(unsigned portIndex, const unsigned char* data |
unsigned char status = data[i]; |
unsigned char strippedStatus = status & 0xf0; |
- // FIXME: support System Exclusive. |
- if (strippedStatus >= 0xf0) |
+ // FIXME: integrate sending side filtering and implement more extensive filtering. |
+ if (strippedStatus >= 0xf0 && !m_access->sysExEnabled()) |
break; |
// All non System Exclusive messages have a total size of 3 except for Program Change and Channel Pressure. |