Age | Commit message (Collapse) | Author |
|
|
|
|
|
Makes the DCT code use constants of type float in expressions which only use
type float values otherwise. This silences some floating point conversion
warnings in the DCT code.
|
|
|
|
We use float types in variables, thus also use them for constants. Silences
some conversion warnings.
|
|
Since we take a float parameter and return a float value we will also just
work on float values all the way. This silences some float conversion
warnings.
|
|
PS2: Pull request to master for latest PS2 code
|
|
|
|
Although this is harder for physically disabled users to trigger, they
can now use the long middle mouse button press instead to trigger.
|
|
This should massively reduce any chance of a conflict with mouse usage
in games and is still easy for a person with mobility issues to perform.
|
|
This removes the need for a hardware keyboard to trigger the use
of the virtual keyboard via F7 if using the default event mapper.
As middle button is rarely used by games, this should not cause any
conflicts. Though to avoid this possibility, the event is passed to
the engine.
|
|
This allows the keyboard mapper to be enabled without causing breakage
to engines which use F8.
|
|
This allows the virtual keyboard to be enabled without causing breakage
to engines which use F7.
|
|
The warnings are now changed to debug statements, are only shown once
per session (instead of once per stream) and are only enabled for debug
builds.
|
|
|
|
|
|
|
|
ALL: Fix optimization unstable code on checking for null after new.
|
|
RFC: Make HE games use the target name in all save files
|
|
These issues were identified by the STACK tool.
By default, the C++ new operator will throw an exception on allocation
failure, rather than returning a null pointer.
The result is that testing the returned pointer for null is redundant
and _may_ be removed by the compiler. This is thus optimization
unstable and may result in incorrect behaviour at runtime.
However, we do not use exceptions as they are not supported by all
compilers and may be disabled.
To make this stable without removing the null check, you could qualify
the new operator call with std::nothrow to indicate that this should
return a null, rather than throwing an exception.
However, using (std::nothrow) was not desirable due to the Symbian
toolchain lacking a <new> header.
A global solution to this was also not easy by redefining "new" as "new
(std::nothrow)" due to custom constructors in NDS toolchain and various
common classes.
Also, this would then need explicit checks for OOM adding to all new
usages as per C malloc which is untidy.
For now to remove this optimisation unstable code is best as it is
likely to not be present anyway, and OOM will cause a system library
exception instead, even without exceptions enabled in the application
code.
|
|
This reverts commit b585addc23de25c019f250986d50c0373219571d.
The allocation of MemoryPool's page memory is doing in MemoryPool::allocPage,
which uses ::malloc, thus we need to use ::free to free the page memory in
MemoryPool::freeUnusedPages.
|
|
Memory is allocated with new in Hashmap::allocNode() and incorrectly
freed with free() in ~MemoryPool() and freeUnusedPages().
Issue reported by Dr. Memory
|
|
|
|
These are sorted according to the alphabetical order of the description. Thus,
Croatian should be between Chinese (Taiwan) and Czech.
|
|
|
|
|
|
|
|
The value_type is analogous to std::basic_string::value_type.
The unsigned_type on the other hand is an unsigned type of the value_type which
allows to obtain an character without nasty sign extension.
|
|
This fixes compilation of sword25's pluto with Visual Studio. The issue
has been revealed with commit 34169a81. The other data types are
defined in scummsys.h, thus only the missing int64 and uint64 defines
are set.
|
|
|
|
This was taken directly from the old code, which either used different
semantics, or had a genuine bug
|
|
This is needed by the "Mirage" Wintermute game.
Vorbis can do backward seeking, thus we need to enable this for ZIP
streams. Since this can be a potentially slow operation, we throw a
warning (once per stream) when it occurs. Originally, SEEK_END seeks
in GZipReadStream were disabled by commit 9138128f. Refer to patch
#2050337 for more information.
|
|
|
|
|
|
This fixes a couple of these variables by removing them as they
are unused or set-but-unused variables.
|
|
Apparently their tools do not include __has_feature clang extension.
I've submitted the bugreport to them but in the meantime let's have this
define in the system.
|
|
The Russian translated versions of Neverhood have invalid unpacked
sizes for some compressed resources. This helps in identifying their
resource parameters more easily
|
|
|
|
This should fix couple of hundreds of Coverity detected defects.
|
|
|
|
This fixes compilation in the keymapper.
|
|
Config Manager Cleanup
|
|
This can be abused to insert Domains into the game domains without any checks.
Instead, only write iterator access is given.
|
|
|
|
These very old comments claimed that ConfigManager uses INIFile. This is not
true however. Thus removing them should clear things up a little bit.
|
|
This clears up that 'ConfigFile' is actually a class handling only INI-files.
|
|
Instead we provide wrapper functionality now. Intuitively a Domain is not a
simple StringMap.
|
|
This should fix compilation on mingw64 with --enable-c++11 and also make sure
the constants are present on other systems for the uncommon case they might be
missing.
|
|
|
|
This should have no effect on common/math.h as scummsys is included at
the top anyway, but this will fix compilation on some toolchains when
strict ANSI language compliance is enabled i.e. -std=c++11, rather than
-std=gnu11.
This causes an issue as a side effect is to set a guard which disables
various non-standard defines in the system headers i.e. the M_PI and
M_SQRT1_2 constant definitions in the MinGW x86_64 toolchain on
buildbot.
By moving this into scummsys.h after the point of system math.h
inclusion, we can ensure that M_PI etc. are always present.
|