Index: Source/modules/webmidi/MIDIPort.cpp |
diff --git a/Source/modules/webmidi/MIDIPort.cpp b/Source/modules/webmidi/MIDIPort.cpp |
index 4664eacf578c1c8652d811e0e37333136cf0b25a..35b05b0746addefafc6a1a2752bd116b20b5fd0f 100644 |
--- a/Source/modules/webmidi/MIDIPort.cpp |
+++ b/Source/modules/webmidi/MIDIPort.cpp |
@@ -99,22 +99,7 @@ String MIDIPort::type() const |
ScriptPromise MIDIPort::open(ScriptState* scriptState) |
{ |
- if (m_connection == ConnectionStateClosed) { |
- switch (m_state) { |
- case PortState::MIDIPortStateDisconnected: |
- setStates(m_state, ConnectionStatePending); |
- break; |
- case PortState::MIDIPortStateConnected: |
- // TODO(toyoshim): Add blink API to perform a real open and close |
- // operation. |
- setStates(m_state, ConnectionStateOpen); |
- break; |
- case PortState::MIDIPortStateOpened: |
- // TODO(toyoshim): Remove PortState::MIDIPortStateOpened. |
- ASSERT_NOT_REACHED(); |
- break; |
- } |
- } |
+ open(); |
return accept(scriptState); |
} |
@@ -144,6 +129,26 @@ DEFINE_TRACE(MIDIPort) |
RefCountedGarbageCollectedEventTargetWithInlineData<MIDIPort>::trace(visitor); |
} |
+void MIDIPort::open() |
+{ |
+ if (m_connection == ConnectionStateClosed) { |
+ switch (m_state) { |
+ case PortState::MIDIPortStateDisconnected: |
+ setStates(m_state, ConnectionStatePending); |
+ break; |
+ case PortState::MIDIPortStateConnected: |
+ // TODO(toyoshim): Add blink API to perform a real open and close |
+ // operation. |
+ setStates(m_state, ConnectionStateOpen); |
+ break; |
+ case PortState::MIDIPortStateOpened: |
+ // TODO(toyoshim): Remove PortState::MIDIPortStateOpened. |
+ ASSERT_NOT_REACHED(); |
+ break; |
+ } |
+ } |
+} |
+ |
ScriptPromise MIDIPort::accept(ScriptState* scriptState) |
{ |
return ScriptPromise::cast(scriptState, toV8(this, scriptState->context()->Global(), scriptState->isolate())); |