aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/lure/surface.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/engines/lure/surface.cpp b/engines/lure/surface.cpp
index 31d1ecf107..d2cecdae61 100644
--- a/engines/lure/surface.cpp
+++ b/engines/lure/surface.cpp
@@ -898,15 +898,21 @@ bool RestartRestoreDialog::show() {
screen.paletteFadeIn(&p);
// Event loop for making selection
+ bool buttonPressed = false;
+
while (!events.quitFlag) {
// Handle events
- if (events.pollEvent()) {
+ while (events.pollEvent()) {
if ((events.type() == Common::EVENT_LBUTTONDOWN) && (highlightedButton != -1)) {
mouse.waitForRelease();
+ buttonPressed = true;
break;
}
}
+ if (buttonPressed)
+ break;
+
// Check if the pointer is over either button
int currentButton = -1;
if ((mouse.y() >= btnRecord->BtnRestart.y) &&