aboutsummaryrefslogtreecommitdiff
path: root/engines/testbed/testbed.cpp
diff options
context:
space:
mode:
authorNeeraj Kumar2010-08-14 06:06:41 +0000
committerNeeraj Kumar2010-08-14 06:06:41 +0000
commit169d1eb0cc52438b00ad204a407b6eeb93fb8614 (patch)
tree2aee585cc34d71dfd94a64ae14aa8584d92cb0ac /engines/testbed/testbed.cpp
parentf9005dd4b3c362ec4dedeace7d288a3da16d04e6 (diff)
downloadscummvm-rg350-169d1eb0cc52438b00ad204a407b6eeb93fb8614.tar.gz
scummvm-rg350-169d1eb0cc52438b00ad204a407b6eeb93fb8614.tar.bz2
scummvm-rg350-169d1eb0cc52438b00ad204a407b6eeb93fb8614.zip
TESTBED: some more refinements with handling Quit events in GUI
svn-id: r52078
Diffstat (limited to 'engines/testbed/testbed.cpp')
-rw-r--r--engines/testbed/testbed.cpp12
1 files changed, 10 insertions, 2 deletions
diff --git a/engines/testbed/testbed.cpp b/engines/testbed/testbed.cpp
index 51ff43a293..e538c7f20c 100644
--- a/engines/testbed/testbed.cpp
+++ b/engines/testbed/testbed.cpp
@@ -98,7 +98,12 @@ TestbedEngine::TestbedEngine(OSystem *syst)
// Do not initialize graphics here
// However this is the place to specify all default directories
-
+ // Put game-data dir in search path
+ Common::FSNode gameRoot(ConfMan.get("path"));
+ if (gameRoot.exists()) {
+ SearchMan.addDirectory(gameRoot.getDisplayName(), gameRoot);
+ }
+
DebugMan.addDebugChannel(kTestbedLogOutput, "LOG", "Log of test results generated by testbed");
DebugMan.addDebugChannel(kTestbedEngineDebug, "Debug", "Engine-specific debug statements");
DebugMan.enableDebugChannel("LOG");
@@ -144,6 +149,9 @@ void TestbedEngine::invokeTestsuites(TestbedConfigManager &cfMan) {
int numSuitesEnabled = cfMan.getNumSuitesEnabled();
for (iter = _testsuiteList.begin(); iter != _testsuiteList.end(); iter++) {
+ if (shouldQuit()) {
+ return;
+ }
(*iter)->reset();
if ((*iter)->isEnabled()) {
Testsuite::updateStats("Testsuite", (*iter)->getName(), count++, numSuitesEnabled, pt);
@@ -169,12 +177,12 @@ Common::Error TestbedEngine::run() {
cfMan.selectTestsuites();
// Init logging
Testsuite::initLogging(true);
+ invokeTestsuites(cfMan);
// Check if user wanted to exit.
if (Engine::shouldQuit()) {
return Common::kNoError;
}
- invokeTestsuites(cfMan);
TestbedExitDialog tbDialog(_testsuiteList);
tbDialog.init();
tbDialog.run();