Age | Commit message (Collapse) | Author |
|
|
|
|
|
Bug 1:
If the original C string contained chars > 127 they would be stored
as huge u32 numbers due to the underflow as char is signed.
It still might end-up with invalid UTF32 characters, but now the caller
can control it.
Bug 2:
The inline storage was not properly initialized when U32String was
initalized from shorter non-UTF32 strings.
|
|
|
|
|
|
|
|
|
|
C4121 is about 'symbol': alignment of a member was sensitive to packing
|
|
* WINTERMUTE: Add detection for "The Driller Incident"
"The Driller Incident" is a small freeware game for Wintermute,
avaliable in English and Russian: http://questzone.ru/enzi/files/1645
* WINTERMUTE: Add detection table for "One Helluva Day" demo
"One Helluva Day" is a point-and-click adventure demo in English / Czech
/ Russian.
Free download:
https://store.steampowered.com/app/603680/One_helluva_day/
* WINTERMUTE: Support CHARSET property for TT fonts
"// we don't need this anymore" was a mistake =)
Surely, most Wintermute games are either designed for 1252 language
(DE_DEU, EN_ANY, ES_ESP, FR_FRA, IT_ITA, PT_BRA), or don't use TrueType
fonts (5ma, deadcity, grotter1, grotter2, thekite, tib), or use
CHARSET=1 with UTF strings (dirtysplit, reversion1, reversion2, twc),
which meen this conversion is not needed for those games.
However, there are some games that explicitly states CHARSET=10 (driller
(RU_RUS), oknytt (RU_RUS), onehelluvaday (UNK_LANG when playing as
Russian)) and there are some games with CHARSET=1 with non-1252 in mind
(bookofgron (RU_RUS excepts 1251), carolreed4 (RU_RUS excepts 1251),
kulivocko (CZ_CZE excepts 1250)).
This fixes text in some games: bookofgron, carolreed4, driller, kulivocko,
oknytt, onehelluvaday.
* WINTERMUTE: Break savegame compatibility
sizeof(BaseFontTT) was changed, so let's break savegame compatibility
* COMMON: Add conversion tables for win1253 and win1257
* COMMON: Add string conversion from U32String back to Common::String
convertUtf32ToUtf8 code is based on Wintermute::ConvertUTF32toUTF8
convertFromU32String use convertUtf32ToUtf8 for UTF8 or lookup through
conversion table for single-byte encodings
* WINTERMUTE: Use Common::convert functions for non-UTF charsets
* WINTERMUTE: Fix whitespaces at detection tables
* WINTERMUTE: Add TODO comments
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Cast the string character type to native type for comparison.
|
|
|
|
Symbols for codes shorter than the prefix table index width are stored
in the table. All the entries in the table with an index starting with
the code are set to the symbol value. That way, when decoding it is
possible to get the number of bits corresponding to the table width from
the bitstream and directly find the symbol value. Longer code still need
to be searched for in the codes list.
|
|
* Fixed peekBits not to seek the underlying stream. Seeking can be slow
when the stream is a file.
* Changed multi-bit operations to work on multiple bits at once rather
than iterating over single-bit operations.
This is an almost direct port of a patch for xoreos provided by DrMcCoy.
|
|
|
|
|
|
matchString patterns couldn't be used to find files with the # character
as it was only treated as a digit wildcard. SCI expected that to work as
it looks for files that start with the # character.
|
|
|
|
Hidden files are now only ignored in the GUI file browser when the user
has not checked 'show hidden files'.
Myst III has the hidden flag set for one of the directories containing
datafiles on the CD-ROM. When users copy the files to their hard drives
the hidden flag is kept. Detection worked previously because hidden
files were explicitly requested in the AD code. The engine would fail
to open the datafiles because SearchMan.addSubDirectoryMatching
ignored hidden directories.
|
|
It's not very useful. However this is mostly to test the theory that the
build failure we've been experiencing in
engines/scumm/he/logic/football.cpp with the osx builder on buildbot is
related to the size of the intermediary assembly source file.
|
|
|
|
|
|
There was a typo in the name (missing 'r' in browser).
|
|
Instead of trying to undefine ARRAYSIZE everywhere we use a Windows header, let's just do it before we define our own
|
|
|
|
|
|
|
|
|
|
|
|
|
|
At the moment, this produces nothing but misery in the form of
Valgrind warnings and horrible noise.
|
|
The current Portuguese entry is Brazilian dialect, so modifying the
description and adding an entry for European Portuguese.
This is required to deal with bug Trac #10791.
|
|
This is required in PINK engine for danish localization as per
Trac bug #10708.
|
|
This fixes a crash due to concurrent access to the global MemoryPool
used by the String class when String objects are used simultaneously
from several threads (as is for example the case when enabling the
cloud features).
See bug #10524: Thread safety issue with MemoryPool
|
|
Some feature, such as mutexes, are only available once the backend
has been initialized. This new function can be used to avoid using
those feature too early or too late.
|
|
Scaling works correctly with the Windows variant, which uses AVI files,
but the DOS variant uses Robot videos, and the way scaling is done
there is different, and is not working yet with KQ7 DOS. Nonetheless,
both versions are included in the game, so it's not a major issue.
|
|
A new internal table has been added so that no if checks need to
be performed for the at() lookup.
The old table can still be accessed using getTable or atLegacy().
at() and atLegacy() return the same values, but at() is faster.
|
|
When the constructor for the cos/sin table was changed from
number of bits to number of points all usages thoughout the
code should of been changed, but this was missed in RDFT and DCT.
Fixes Trac#10683.
|
|
|
|
They now take in the size rather than the power of 2 exponent.
|
|
Previously, the cos/sin table had to be a power of 2, but there
are many use cases where the number of points is not necessarily
a power of 2 so this change the constructor so it now takes
in the number of points rather than the number of points as the
exponent of a power of 2.
The restriction is that the size must be divisible by 4.
|
|
|