diff --git a/src/odoors/ODGetIn.c b/src/odoors/ODGetIn.c
index bc905510f278a95d89f68ebd8c547df0494b0c4f..3b57c4e386a6e578805823110daa4288a3114367 100644
--- a/src/odoors/ODGetIn.c
+++ b/src/odoors/ODGetIn.c
@@ -248,7 +248,9 @@ ODAPIDEF BOOL ODCALL od_get_input(tODInputEvent *pInputEvent,
       {
          if(TimeToWait != OD_NO_TIMEOUT ||
             (bTimerActive && ODTimerElapsed(&SequenceFailTimer)
-            && szCurrentSequence[0] == 27 && strlen(szCurrentSequence) == 1))
+            /* 04/05 You can't expect ESC to be pressed and nothing else to follow */
+            /* && szCurrentSequence[0] == 27 && strlen(szCurrentSequence) == 1)) */
+            && szCurrentSequence[0] == 27))
          {
             /* If no input event could be obtained within the specified */
             /* then return with failure.                                */
@@ -428,7 +430,10 @@ FunctionExit:
          {
             /* If the sequence began with an escape key, then return an escape */
             /* key event.                                                      */
-            if(szCurrentSequence[0] == 27 && strlen(szCurrentSequence) == 1)
+            /* 04/05 - You need to store or dump the rest of the sequence...   */
+            /*         or it'll park here effectively forever!                 */
+            /* if(szCurrentSequence[0] == 27 && strlen(szCurrentSequence) == 1)*/
+            if(szCurrentSequence[0] == 27)
             {
                pInputEvent->bFromRemote = bSequenceFromRemote;
                pInputEvent->chKeyPress = szCurrentSequence[0];