From 169d1eb0cc52438b00ad204a407b6eeb93fb8614 Mon Sep 17 00:00:00 2001 From: Neeraj Kumar Date: Sat, 14 Aug 2010 06:06:41 +0000 Subject: TESTBED: some more refinements with handling Quit events in GUI svn-id: r52078 --- engines/testbed/testbed.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'engines/testbed/testbed.cpp') 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(); -- cgit v1.2.3