aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-11-10ENGINES: Improve output of unknown game variant detectionColin Snover
When a user tries to add a game expecting it to be a particular game for a particular engine, but a detector from another engine happens to match some files that exist in the game directory and reports on those files instead, this can cause a lot of confusion because the detector doesn't say what engine or game it thought it matched. This patch adds the name of the matching engine as well as any matching game IDs (if applicable) to the detector's logged output. It also provides more specific guidance about where to send the detection information (to the bug tracker), and properly wraps the first part of the report to 80 columns. Refs Trac#10272.
2017-11-10ENGINES: Continue to check file presence after a hash/size mismatchColin Snover
If an early file in the game's signature list has a hash/size mismatch, it is still necessary to continue to check the rest of the candidate files for existence, since the non-existence of candidate files is supposed to disqualify a game description as matching a game to an unknown variant. By quitting the file check early, the detector had been allowing descriptions to randomly match if there happened to be an early file in the detection list with the right name but wrong hash/size, even if some of the other signature files did not exist at all.
2017-11-10COMMON: Add basic fixed-width word wrap to Common::StringColin Snover
2017-11-10CGE: Remove garbage character from commentsColin Snover
2017-11-10BBVS: Remove all bit shifts of potentially negative integersColin Snover
Previous patches that removed shifts of constant negative values to eliminate UB were valid, but did not correct all places where this engine was potentially bit shifting negative values. There is no reason to not just use multiplication and division and let the compiler make the right choice for optimisation for an architecture, so that is what this patch does.
2017-11-10ALL: Fix misuse of comma operatorColin Snover
2017-11-10COMMON: Use C++11 static_assert when availableColin Snover
This improves the output of static assertions in all compilers, and prevents problems in MSVC 2015 where the mechanism for triggering a compilation error in C++98 mode may cause errors when that compiler builds in release mode. Fixes Trac#10154.
2017-11-10XEEN: Fix animation of wall torchesPaul Gilbert
2017-11-09Merge pull request #1049 from csnover/lure-unalignedPaul Gilbert
LURE: Stop taking address of unaligned pointer
2017-11-09XEEN: Cleanup of PowType enum namesPaul Gilbert
2017-11-09XEEN: Properly animate arrow shootingPaul Gilbert
2017-11-09XEEN: Create a PowType enum for ranged arrow/spell typesPaul Gilbert
2017-11-08XEEN: Changed multiAttack to rangedAttackPaul Gilbert
2017-11-08AUDIO: Switch to BitStreamMemoryStream in the QDM2 decoderBastien Bouclet
2017-11-08AUDIO: Add some padding to the QDM2 decoder input bufferBastien Bouclet
Fixes out of bounds reads in the Myst ME intro videos. OOB reads may happen because: - The bitstream implementation reads 4 bytes at a time, and the buffer size is not guaranteed to be a multiple of 4. - The huffman parsing code reads a fixed amount of bits when it sometimes needs not all of them. Also fixed bits vs bytes mismatch for the size parameter of the calls to the bitstream constructor, and removed a few unnecessary heap allocations. Fixes #10220.
2017-11-07LURE: Stop taking address of unaligned pointerColin Snover
While usage of these pointers was technically safe because they were read through an alignment-aware API, taking the address of an unaligned pointer was generating warnings in Clang, and is not strictly necessary here. This change solves the warning and also protects this code from any future change that might cause it to start reading unsafely.
2017-11-07SDL: Get correct default graphics mode ID when queriedColin Snover
Fixes Trac#10312.
2017-11-07XEEN: Fix FX calls in multiAttackPaul Gilbert
2017-11-07I18N: Update translation (German)Lothar Serra Mari
Currently translated at 100.0% (959 of 959 strings)
2017-11-07LINUX: Fix Header for major/minor macros, thus removing warnings.D G Turner
Warnings are as follows: "In the GNU C Library, "minor" is defined by <sys/sysmacros.h>. For historical compatibility, it is currently defined by <sys/types.h> as well, but we plan toremove this soon. To use "minor", include <sys/sysmacros.h> directly. If you did not intend to use a system-defined macro "minor", you should undefine it after including <sys/types.h>"
2017-11-06I18N: Regenerate translations data fileThierry Crozat
2017-11-04TITANIC: Remove testing flag from German versionPaul Gilbert
2017-11-04ŃEWS: Update German NEWS filerootfather
2017-11-02NEWS: Add important Myst bug fixesBastien Bouclet
2017-11-02MOHAWK: RIVEN: Remove the testing flagBastien Bouclet
2017-11-02BASE: Minor command line detection cleanupBastien Bouclet
2017-11-02VIDEO: Express VideoDecoder::endOfVideo using easier to understand logicBastien Bouclet
2017-10-31I18N: Update translations templatesThierry Crozat
2017-10-31SCUMM: Prevent false detection of Steam gamesBen Castricum
2017-10-29XEEN: Enable starting game from startup menuPaul Gilbert
2017-10-29DOC: Remove reference to SF for the Bug Tracker; improve wordingrootfather
2017-10-29DOC: Remove reference to Sourceforge for the Bug Trackerrootfather
2017-10-29SCI: Fix UB in SegManager memcpy/strcpy operationsColin Snover
Passing overlapping buffers to C standard library memcpy, strcpy, and strncpy is undefined behavior. In SSCI these operations would perform a forward copy, and most stdlib implementations do the same, but at least newer Linux glibc on x86 copies bytes in reverse, so just using the standard library on this platform results in broken output. Because SSCI used a blind forward copy instead of memmove for overlapping copy operations, this patch implements an explicit forward copy to ensure that overlapping copies continue to operate the same as in SSCI. This fixes the Island of Dr. Brain v1.1 flamingo puzzle (script 185, flamingos::init, localCall 4c3) on platforms that do not perform forward copy in memcpy/strcpy/strncpy. Thanks to @moralrecordings for research on this bug and an initial patch using memmove. Closes gh-1034.
2017-10-29TESTBED: Only build cloud tests if libcurl is available tooWillem Jan Palenstijn
This matches the module.mk checks for backends/cloud
2017-10-29CONFIGURE: Handle freetype-config SYSROOT duplication in prefixWillem Jan Palenstijn
Since version 2.3.12, freetype-config adds SYSROOT to all paths. If we pass a --prefix that already includes SYSROOT, this will return a duplicate SYSROOT. This patch detects that and adjusts prefix accordingly.
2017-10-29CONFIGURE: Add missing --with-libcurl-prefix optionWillem Jan Palenstijn
2017-10-29CONFIGURE: Improve configure help formatting consistencyWillem Jan Palenstijn
2017-10-28Merge pull request #1046 from digitall/saga_ite_frenchThierry Crozat
SAGA: Add Code to Support French Fan Translation.
2017-10-28SAGA: Replace Remaining French Accented Characters with Escape Codes.D G Turner
2017-10-28SAGA: Add Define for French Language for clarity.D G Turner
2017-10-27TITANIC: Hopefully fix AmigaOS compilationPaul Gilbert
2017-10-27SAGA: Correct Tenses in French Fan Translation of ITE.D G Turner
These changes were suggested by bgK.
2017-10-26SAGA: Add Code to Support French Fan Translation.D G Turner
This code was supplied by Darknior (hugues.fabien@gmail.com).
2017-10-25Merge pull request #1035 from bgK/require-64bits-integersBastien Bouclet
BUILD: Require 64bits integers
2017-10-25MOHAWK: MYST: Add detection for a Russian versionBastien Bouclet
2017-10-23SDL: Automatically grab mouse upon entering fullscreenColin Snover
Folks are confused about the new behaviour where the mouse is not restricted to the game area in fullscreen, which is understandable. This changes mouseIsGrabbed to use SDL directly in order to avoid making changes to the user preference in the _inputGrabState. Otherwise we'd either clobber the user's previous windowed mouse grab preference, or require maintaining a second variable just to track the original state, when we can have SDL do that for us.
2017-10-23I18N: Regenerate translations data fileThierry Crozat
2017-10-21SCI: Allow lofsa string printing in disasm for all SCI versionsWillem Jan Palenstijn
2017-10-21SCI: Fix offsets in disasm for multi-param opcodesWillem Jan Palenstijn
This code was assuming that retval points to the start of the next instruction, which is only true if the current parameter is the last one. This fixes op_call printing.
2017-10-19SDL: Fix SDL1 cursor position when using a touchscreenTarek Soliman
I noticed that in Maemo the cursor was offset after the SDL refactoring in de2bbe3b9738ef95b2529db989570770ef434f9d In Maemo when entering fullscreen, ScummVM receives a SDL_VIDEORESIZE event with the native touchscreen resolution rather than the current window size. This causes a call to notifyResize. Before that refactoring, notifyResize did nothing (in SDL1). Now it calls handleResize but doesn't actually set a new video mode. This messes up the coordinate mapping, causing an overcorrection for the cursor position.