From 9b79eeeb8146926ba533334d4d641b104e2b1038 Mon Sep 17 00:00:00 2001 From: elasota Date: Fri, 27 Dec 2019 23:02:01 -0500 Subject: [PATCH] Yield to VOS during pause (fixes hang) --- GpApp/Input.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/GpApp/Input.cpp b/GpApp/Input.cpp index b744de9..539e424 100644 --- a/GpApp/Input.cpp +++ b/GpApp/Input.cpp @@ -91,6 +91,7 @@ void DoPause (void) do { GetKeys(theKeys); + Delay(1, nullptr); } while ((isEscPauseKey && BitTst(theKeys, PL_KEY_SPECIAL(kEscape))) || (!isEscPauseKey && BitTst(theKeys, PL_KEY_SPECIAL(kTab)))); @@ -104,6 +105,8 @@ void DoPause (void) paused = false; else if (BitTst(theKeys, PL_KEY_EITHER_SPECIAL(kControl))) DoCommandKey(); + + Delay(1, nullptr); } CopyBits((BitMap *)*GetGWorldPixMap(workSrcMap), @@ -113,6 +116,7 @@ void DoPause (void) do { GetKeys(theKeys); + Delay(1, nullptr); } while ((isEscPauseKey && BitTst(theKeys, PL_KEY_SPECIAL(kEscape))) || (!isEscPauseKey && BitTst(theKeys, PL_KEY_SPECIAL(kTab))));