find -name '*.h' -or -name '*.cpp' | xargs sed -r -i 's@\(([A-Za-z0-9]+)\*\)@(\1 *)@g'
This seems to have caught some params as well which is not undesirable IMO.
It also caught some strings containing this which is undesirable so I
excluded them manually. (engines/sci/engine/kernel_tables.h)
Otherwise there is no way of generating these events, thus it's better to make
people really aware of this.
I furthermore added some nots that its part of a WIP API, thus it should only
be used after checking up.
The charsets used by the translations now need to have a "$(name).cp" file,
which contains an charset index => unicode mapping. Otherwise
create_translations will fail.
setjmp and longjmp are being used in system headers.
Allow these symbols globally instead of hacking the appropriate
defines in every file including windows.h.
The == operator in KeyState should not be checking for sticky modifier
keys. This allows the keymapper's defined actions to function correctly
in desktop platforms, when sticky modifier keys such as caps lock and
num lock are turned on. Also, added some sanity checks to hasFlags()
and enums for sticky and non-sticky keys
The GUIO flags use an escape sequence for octal numbers. Starting with
18e84f9c11 GUIO_MIDICMS used "\008" which
resulted in the CMS flag adding a zero into the flags and thus terminating the
GUIO flag string.
The header contains forbidden symbols on some platforms, and the
simplest solution seems to be to include it here. This also includes
it from all the portdefs.h files, except the Symbian one. Probably
the FIXME and the #if can be removed once it's known to work.
Now our Array class distinguishs between initialized and uninitialized
objects. It furthermore always calls the destructor of no longer contained
elements. This should help with non-POD objects stored in our Array class.
Thanks to Bertrand for his feedback on this.
ascii is used for display and text input. Operator== shouldn't be used in those cases.
Besides, it breaks the keymapper for non-ascii keys like KEYCODE_LEFT
When clearing an existant object clear() should be used.
When constructing objects (or using default values for parameters) the
constructor of String without any argument should be used.
This changes only a few instances I noticed while looking over some recent
commit logs.
This eliminates nasty limitation of caping number of flags to 31.
Current code has limitation of 255 flags, though.
Only SCUMM engine is converted, rest do not even compile.
Detection of fan talkie MI is broken as it has to be implemented
differently.
The cache issue has been discussed before, it breaks accessing files
beginning with a dot on POSIX. The change to the advancedDetector
to see hidden files was suggested by AdamRi on IRC.