Commit Graph

146303 Commits

Author SHA1 Message Date
Walter Agazzi
9fa5bb64fb AGS: Silence redundant mouse warning
Mouse movement control is not supported, but the warning should only be
displayed when requesting the functionality
2023-11-02 20:06:28 +01:00
Walter Agazzi
604f0e8bb9 AGS: Fix fullscreen setting not being updated. PVS-Studio V523 2023-11-02 20:06:28 +01:00
Walter Agazzi
5d885dc53a AGS: Updated build version (3.6.0.53)
Partially from upstream 8a66ece938ca73d8bcd49d86424f5e061673a660
2023-11-02 20:06:27 +01:00
Walter Agazzi
64edc1cdc2 AGS: Engine: restored faster String.Chars and Length variants for ASCII mode
The purpose is to at least keep string iteration relatively fast in ASCII
game mode, for backwards compatibility.
Also fixed String.Length for plugins in Unicode mode.
From upstream 052def762633796b5565fd0e79295392e5e43b52
2023-11-02 20:06:27 +01:00
Walter Agazzi
c688b1d586 AGS: Engine: log warnings when Display or Say is called during fade-out
From upstream d7235fcef3c3ff042f9a4f9eed6ac0a250296927
2023-11-02 20:06:27 +01:00
Walter Agazzi
a2b10cdac7 AGS: Engine: also removed filter name "none" from help, as non-working
From upstream c6d9d1b10cf1863ceaa8538d41b8df66216b2787
2023-11-02 20:06:27 +01:00
Walter Agazzi
531a915261 AGS: Engine: hotfix config failing at cs filter names in "disabled"
From upstream 79847cc5e59236cfd93d6d98218c01d5f3cfa03f
2023-11-02 20:06:27 +01:00
Walter Agazzi
f6c9925e1b AGS: Engine: small improvement to legacy saves error messages
From upstream 1be6c5816b4da09a7289465d83b34b34d2107e3d
2023-11-02 20:06:27 +01:00
Walter Agazzi
006da655f0 AGS: Engine: a better error message for missing Audio sig in legacy saves
Also removed audioclips number check, as that's not necessary for saves.
From upstream bc355721b7b06c5b7b2d3da6a422be2f59c651a1 and
96724015d86094c08e926105438db216d58d8532
2023-11-02 20:06:26 +01:00
Walter Agazzi
23debc2ea5 AGS: Clear screen after video playback
Upstream already does this and is required to avoid glitches in some games
2023-11-02 20:06:26 +01:00
Walter Agazzi
fa71aeadf8 AGS: Clear dest rect before calling transBlit in play_video
When playing a stretched video, clear the destination rect to avoid the
frames being drawn on top of each other.
Fixes intro video in Pleurghburg Dark Ages
2023-11-02 20:06:26 +01:00
Walter Agazzi
3cc56da41c Revert "AGS: Engine: don't Poll non-clickable GUIs"
This reverts commit c3589db569,
which breaks GUI functions in Kathy Rain
2023-11-02 20:06:26 +01:00
ScummVM-Translations
6d26a36a4b I18N: Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: ScummVM/scummvm
Translate-URL: https://translations.scummvm.org/projects/scummvm/scummvm/
2023-11-02 19:05:19 +00:00
sluicebox
b1688d0a47 WINTERMUTE: Fix debugger error handling
This was detected as a memory leak, but first this code
attempted to delete a stack-allocated object.

Coverity CID 1360370
2023-11-02 12:01:26 -07:00
sluicebox
43db6fad0d WINTERMUTE: Add newline at EOF 2023-11-02 12:01:26 -07:00
sluicebox
953a7226e7 SAGA: Fix memory leak on error
Coverity CID 1501495
2023-11-02 12:01:25 -07:00
ScummVM-Translations
41542da416 I18N: Update translations templates 2023-11-02 17:20:57 +00:00
Kaloyan Chehlarski
486b139d10 AD: Clean up detection prefix generation functions
Cleaned up the functions md5PropToGameFile() and
md5PropToCachePrefix() so they no longer work through
a tree of switches. Both functions have also been changed to
return a Common::String.
2023-11-02 18:20:44 +01:00
Kaloyan Chehlarski
f7fe15ed42 AD: Add sanity checks for entries with archives
AdvancedMetaEngineDetection::detectClashes() now
performs a sanity check for entries with archive members,
making sure their filename schema contains exactly three
elements.
2023-11-02 18:20:44 +01:00
Kaloyan Chehlarski
ad682243c4 AD: Support reading inside InstallShieldV3 archives
InstallShield V3 archives are a completely different format
and have their own Archive subclass; this commit allows
AdvancedDetector to look inside them. Also moved around
some of the relevant logic and added more comments to
make the code more readable.
2023-11-02 18:20:44 +01:00
Kaloyan Chehlarski
1a08bcc08f ARCHIVE: Allow creating InstallShieldV3 archives with FSNode 2023-11-02 18:20:44 +01:00
Kaloyan Chehlarski
c598e60e5e AD: Clear archive cache when starting game
This ensures we don't keep potentially expensive and
otherwise useless objects when a game is running
2023-11-02 18:20:44 +01:00
Kaloyan Chehlarski
f77eca7c80 AD: Implement archive caching during detection
Renamed MD5CacheManager to AdvancedDetectorCacheManager,
and added facilities for storing open archives inside it. This
way an archive that was opened by an AdvancedDetector
will be kept in memory until the end of the detection, so
other entries/engines that will look inside it won't have
to reopen it and reread its data every time.
2023-11-02 18:20:44 +01:00
Kaloyan Chehlarski
71e445db5a NANCY: Upgrade detection entries to new system
Detection entries for compressed game variants now have
an additional file entry for ciftree.dat, which uses the newly
introduced feature for scanning inside archives. The few entries
which I don't own have been temporarily disabled.
Also, a couple new compressed entries have been added; these
were previously put on hold for after the scanning feature
was implemented.
2023-11-02 18:20:44 +01:00
Kaloyan Chehlarski
22553cb924 AD: Implement scanning inside InstallShield archives
Added the A: prefix to detection md5 sums, which is used to
signify that the desired file is embedded within an archive.
Added support for similar prefixes in filenames, which should
look like the following example:

is:data1.cab:file.dat

Where "is" is the identifier for InstallShield archives,
"data1.cab" is the name of the archive container file, and
"file.dat" is the name of the file whose md5 sum will actually
be calculated.
2023-11-02 18:20:44 +01:00
Kaloyan Chehlarski
3829b41235 COMMON: Allow creating InstallShield archive with FSNode
This is needed for cases where SearchMan is not applicable
(e.g. during detection)
2023-11-02 18:20:44 +01:00
sluicebox
bc7dcc0366 SCUMM: Fix out of bounds array access
ScummEngine::runScript expects an array of size NUM_SCRIPT_LOCAL.

Coverity CID 1501555
2023-11-02 09:28:19 -07:00
sluicebox
23901f22ee TITANIC: Fix memory leak
TTsynonym constructor copies the value of the incoming string, it does
not take ownership.

Coverity CID 1361031
2023-11-02 09:28:19 -07:00
sluicebox
fa6454ef4f PRIVATE: Fix memory leaks in locations and inventory
Coverity CID 1453259
Coverity CID 1453260
2023-11-02 09:27:33 -07:00
sluicebox
4fcb00a835 NGI: Fix memory leaks when flipping bitmaps
Coverity CID 1433114
Coverity CID 1433128
2023-11-02 09:27:33 -07:00
sluicebox
3809934d21 MACVENTURE: Fix memory leak in text decoding
Coverity CID 1362449
2023-11-02 09:26:16 -07:00
sluicebox
b00616a98d LURE: Fix memory leak in status window hotspots
Coverity CID 1003910
2023-11-02 09:26:15 -07:00
sluicebox
d36331ba98 HPL1: Fix memory leak
Coverity CID 1518937
2023-11-02 09:26:15 -07:00
sluicebox
bbf932a911 GRIFFON: Fix memory leak when initializing
Coverity CID 1506377
2023-11-02 09:26:14 -07:00
sluicebox
f1426f42a0 COMPOSER: Fix memory leak when loading save
Coverity CID 1365422
2023-11-02 09:26:13 -07:00
sluicebox
6454e0cab0 DEVTOOLS: Fix memory leak in create_translations
Coverity CID 1432243
2023-11-02 09:26:13 -07:00
Kaloyan Chehlarski
63f720a330 NANCY: Implement reading patches from nancy.dat
Added facilities for reading patch files embedded within
nancy.dat. The patches are distributed as a single ciftree,
which is loaded (almost) normally into SearchMan. However,
patches can also be enabled/disabled at will via specific
ConfMan entries, whose names are also embedded within
nancy.dat, and read at runtime.
2023-11-02 11:41:22 +02:00
Kaloyan Chehlarski
82cd37ce34 DEVTOOLS: Add nancy2 patches to create_nancy
Added facilities for embedding game patches into nancy.dat
Added two game patches for nancy2:
- one of the original patches, as distributed by the original
devs. Specifically, only the patch to extend the end-game
timer; there exists another patch that fixes an error when
double-clicking a specific cupboard, but that's caused by
an engine bug that does not exist in ScummVM.
- a new, custom patch that fixes a nasty softlock caused
by incorrect dependencies in a certain scene.
2023-11-02 11:41:22 +02:00
Kaloyan Chehlarski
2f42aade45 NANCY: Fix ciftree export
Fixed the data offsets, which were previously really wrong
2023-11-02 11:41:22 +02:00
Kaloyan Chehlarski
d3976468b1 BACKENDS: LIBRETRO: Fix memory leak
Coverity CID 1502443
2023-11-02 11:41:22 +02:00
Kaloyan Chehlarski
25c3efb0e2 AUDIO: Fix memory leak in WMA
Coverity CID 1338118
2023-11-02 11:41:22 +02:00
Kaloyan Chehlarski
d67fcb5e8b AUDIO: Fix memory leak in AIFF
Coverity CID 1490097
2023-11-02 11:41:21 +02:00
Kaloyan Chehlarski
2f7861963e NANCY: Ensure consistent ciftree names for SearchMan
It appears SearchMan Archive storage is case-sensitive,
which can cause errors when loading files. This commit
makes sure all ciftrees are stored and looked up as
_tree_TREENAME in SearchMan to avoid such errors.
2023-11-02 11:41:21 +02:00
Kaloyan Chehlarski
172b87ebf7 NANCY: Synchronize nancy2 movies with sound
It seems earlier games were aware of the engine bug that
slows down all videos, and their movies were correctly synced
in the original engine. This commit duplicates that bug,
but only in the cases where a movie has an embedded sound
(e.g. the nancy2 cutscenes)
2023-11-02 11:41:21 +02:00
Kaloyan Chehlarski
ce1ac137e1 NANCY: Fix Coverity issues 2023-11-02 11:41:21 +02:00
Xaviu
a253d7098d I18N: Update translation (Catalan)
Currently translated at 80.7% (1622 of 2008 strings)
2023-11-02 04:41:32 +00:00
ScummVM-Translations
74f2c79d45 I18N: Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: ScummVM/scummvm
Translate-URL: https://translations.scummvm.org/projects/scummvm/scummvm/
2023-11-01 20:28:42 +00:00
AndywinXp
e0a105ba3c SCUMM: COMI: Remove unneeded hack in subtitles rendering
It appears that I have properly fixed this somewhere else during
this year... Having this code in place would just reproduce the
issue I was originally trying to fix.
2023-11-01 21:28:28 +01:00
Antoniou Athanasios
5e60d0235f I18N: Update translation (Greek)
Currently translated at 99.8% (2005 of 2008 strings)
2023-11-01 11:28:20 +00:00
IlDucci
d45e720cf9 I18N: Update translation (Spanish)
Currently translated at 100.0% (2008 of 2008 strings)
2023-11-01 10:09:29 +00:00