[Scummvm-cvs-logs] SF.net SVN: scummvm:[35660] scummvm/trunk/backends/events/default
fingolfin at users.sourceforge.net
fingolfin at users.sourceforge.net
Fri Jan 2 02:21:38 CET 2009
Revision: 35660
http://scummvm.svn.sourceforge.net/scummvm/?rev=35660&view=rev
Author: fingolfin
Date: 2009-01-02 01:21:38 +0000 (Fri, 02 Jan 2009)
Log Message:
-----------
Prevent the 'Confirm exit' dialog from being invoked recursively
Modified Paths:
--------------
scummvm/trunk/backends/events/default/default-events.cpp
scummvm/trunk/backends/events/default/default-events.h
Modified: scummvm/trunk/backends/events/default/default-events.cpp
===================================================================
--- scummvm/trunk/backends/events/default/default-events.cpp 2009-01-02 00:52:01 UTC (rev 35659)
+++ scummvm/trunk/backends/events/default/default-events.cpp 2009-01-02 01:21:38 UTC (rev 35660)
@@ -94,7 +94,8 @@
_buttonState(0),
_modifierState(0),
_shouldQuit(false),
- _shouldRTL(false) {
+ _shouldRTL(false),
+ _confirmExitDialogActive(false) {
assert(_boss);
@@ -482,12 +483,18 @@
case Common::EVENT_QUIT:
if (ConfMan.getBool("confirm_exit")) {
+ if (_confirmExitDialogActive) {
+ result = false;
+ break;
+ }
+ _confirmExitDialogActive = true;
if (g_engine)
g_engine->pauseEngine(true);
GUI::MessageDialog alert("Do you really want to quit?", "Quit", "Cancel");
result = _shouldQuit = (alert.runModal() == GUI::kMessageOK);
if (g_engine)
g_engine->pauseEngine(false);
+ _confirmExitDialogActive = false;
} else
_shouldQuit = true;
Modified: scummvm/trunk/backends/events/default/default-events.h
===================================================================
--- scummvm/trunk/backends/events/default/default-events.h 2009-01-02 00:52:01 UTC (rev 35659)
+++ scummvm/trunk/backends/events/default/default-events.h 2009-01-02 01:21:38 UTC (rev 35660)
@@ -52,6 +52,7 @@
int _modifierState;
bool _shouldQuit;
bool _shouldRTL;
+ bool _confirmExitDialogActive;
class RandomSourceRecord {
public:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list