Age | Commit message (Collapse) | Author |
|
We now check if the engine should quit in the loop of the end credits animation
|
|
"PC" was very ambiguous and now it matches what we show in the GUI.
This also corrects sword2's platform to Windows.
|
|
All instances uncovered by clang warnings.
|
|
|
|
This fixes compilation on pre-C++11 compilers.
|
|
|
|
This is done in the spirit of 658080deeda79d20ea40643569fbcb072573e7cf.
|
|
That code made llvm-g++ 4.2.1 crash when compiling with
optimizations.
|
|
|
|
|
|
Powered by:
git ls-files "*.cpp" "*.h" "*.m" "*.mm" | xargs sed -i -e 's/[ \t]*$//'
|
|
|
|
It's not a floppy version intro, so call it "Alternative intro"
instead. It's too late to make this change in 1.5.0 because it
would need translation changes. (When the option was first added,
it *was* called "Alternative intro" but it got changed along the
way.)
|
|
This is used to set default settings for all custom game options when an
engine starts
|
|
|
|
|
|
Ideally, this should only be added to the CD version but I don't think
we provide any mechanism for telling the CD and floppy versions apart.
|
|
|
|
|
|
ALL: Avoid using is* macros from ctype.h
|
|
|
|
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)
|
|
On some systems, passing signed chars to macros like isspace() etc. lead
to a runtime error. Hence, mark these macros as forbidden by default,
and introduce otherwise equivalent alternatives for them.
|
|
Check where the click was *before* scrolling the view, so that
it works with a touchscreen. Also, check shouldQuit() here.
|
|
As far as I can tell, this 'canQuit' variable (originally 'CANTQUIT')
has been replaced by the _vm->input->canQuit() method in all other
cases. However, I'm not at all sure what effect this change will have.
|
|
|
|
|
|
|
|
|
|
This fixes a potential problem with passing char values that would be sign-extended and yield unexpected results.
See http://msdn.microsoft.com/en-us/library/ms245348.aspx
|
|
Safer and less portability issues.
|
|
|
|
|
|
|
|
|
|
|
|
This also removes the dependency of engines on the event recorder header
and API, and will make it easier to RandomSources that are not properly
registered.
|
|
|
|
Deleting the parser may fire off a series of events, so it's
probably a good idea to keep the driver open for that. I have not
seen this error anywhere else, except maybe in the unit tests.
|
|
Some backends may break as I only compiled SDL
|
|
|
|
|
|
MKID_BE relied on unspecified behavior of the C++ compiler,
and as such was always a bit unsafe. The new MKTAG macro
is slightly less elegant, but does no longer depend on the
behavior of the compiler.
Inspired by FFmpeg, which has an almost identical macro.
|
|
|
|
|
|
|
|
The regression affected AGOS and maybe some others; specifically,
the real MidiDriver would have been deleted twice -- I previously
missed that the Engine instances takes care of freeing the real
MidiDriver, not the MidiPlayer wrapping it.
This commit should clarify the ownership of the real MidiDriver for
most pseudo MidiDrivers.
|
|
Many engines follow the advice in audio/midiparser.h and create a
"pseudo-MidiDriver" subclass. But MidiParser really only needs a tiny
subset of the MidiDriver capabilities, namely those found in
MidiDriver_BASE. So we try to subclass from that whenever possible; this
allows us to remove many stub methods, and enables further future
simplifications.
|
|
|
|
This in turn enables modifying MidiDriver_MPU401::close() to allow
it to be called on a midi driver that has not yet been opened.
The specific issue that triggered me to make these changes was a
crash-upon-quit in HUGO, caused by it instantiating a midi driver,
then encountering an error (missing hugo.dat) *before* having
opened the new midi driver; the general cleanup code then tries
to close the (not yet opened) midi driver -> kaboom
Also fixed some engines which were leaking MidiDriver instances.
|