The error message was not correct.
When you add a game data dir to launcher and after do this
rename game data dir the error was wrong.
It said that the "path wasn't a directory",
the expected error message was
"Path does not exists" because we had changed.
How to solve this:
We split in two the validation of the path, first
we check if it's a existing path and then if the path is a directory.
if (!dir.exists())
err = Common::kPathDoesNotExist;
else if (!dir.isDirectory())
err = Common::kPathNotDirectory;
Solve Bug: 6765 Wrong error code if directory missing
Instead of returning to the launcher, a game may now specify a list
of "chained" games and optional save slots. The first game is popped
from the list and started. Quitting still quits the entire ScummVM.
It seemed like the sensible thing to do.
This is a (temporary) hack to assure that when the launcher is set up as an
SurfaceSDL graphics mode and the game is using an OpenGL graphics mode
everything will work as expected.
This doesn't make any practical difference, since the search
manager already guards against duplicate paths, but it does get rid
of a slightly confusing warning message when you have a global
extra path configured.
It was badly broken after refactoring into EventObserver.
Fitst, deinit() method was never called which lead to bad record
files. Then, the concept of counting pollEvent() calls was ignored.
Introduced dispatchPoll() method of EventObserver which is implemented
in EventRecorder. It counts calls so is able to inject events at
more proper time.
Additionally now event times are recorded.
This tries to make our code a bit more compliant with our code formatting
conventions. For future use, this is the command I used:
git ls-files "*.cpp" "*.h" | xargs sed -i -e 's/[ \t]*$//'
ADGF_UNSTABLE is always warned about.
ADGF_TESTING is only warned about when running
configure with --enable-relase.
Both warnings are subject to the enable_wip_game_warning
config option.
Instead of defining a hacked up Common::Error code, split the return
value of processSettings into two parts: An error code, and a value
which indicates whether the specified command was completely handled
by processSettings or not.
Right now, a few places in the frontend code still use printf and
consorts. We mark the affected files with a FIXME for now, and
add a dedicated exception for each. To be fixed!
Also tweak FORBIDDEN_SYMBOL_REPLACEMENT to hopefully really always
enforce a compiler error