diff --git a/src/gui/gui.cpp b/src/gui/gui.cpp index a8f56fb76..c426fa070 100644 --- a/src/gui/gui.cpp +++ b/src/gui/gui.cpp @@ -3057,6 +3057,13 @@ bool FurnaceGUI::loop() { case SDL_KEYUP: if (!ImGui::GetIO().WantCaptureKeyboard) { keyUp(ev); + } else { + if (noteOffOnRelease) { + if (ev.key.keysym.scancode==noteOffOnReleaseKey) { + noteOffOnRelease=false; + e->noteOff(noteOffOnReleaseChan); + } + } } break; case SDL_QUIT: