aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-11-11DRASCULA: Simplify the drawing code in BJ's roomFilippos Karapetis
2017-11-11DRASCULA: Remove superfluous variableFilippos Karapetis
2017-11-11DRASCULA: characterMoved and characterVisible are boolean variablesFilippos Karapetis
2017-11-11I18N: Update translations templatesThierry Crozat
2017-11-11SWORD25: Add a constructor to initialize SoundHandle membersBastien Bouclet
Fixes #7018
2017-11-11SWORD25: Fix leaking the save thumbnail surfaceBastien Bouclet
2017-11-11SDL: Fix assertion when using 4bpp cursors with a key colorBastien Bouclet
Myst ME uses such cursors.
2017-11-11ADL: Remove ADGF_TESTING for hires5+6Walter van Niftrik
2017-11-10SWORD1: Fix use of deallocated stack memoryColin Snover
FSNode::getName returns a String object, not a reference, so the pointer from c_str is valid only until the end of the statement.
2017-11-10SKY: Fix use of deallocated stack memoryColin Snover
FSNode::getName returns a String object, not a reference, so the pointer from c_str is valid only until the end of the statement.
2017-11-11SDL: Use RLE acceleration for SDL2 transparent surfacesThierry Crozat
We were already doing it for SDL1.2, but with SDL2 the SDL_RLEACCEL is not passed to SDL and instead we need to call SDL_SetSurfaceRLE.
2017-11-11SDL: Preserve mouse position when switching between OpenGL and SurfaceSDL ↵Thierry Crozat
backends Since those GraphcisManager initialize the cursor position to (0,0) when created the cursor was jumping to the top left corner and then moving back to its initial position as soon as the mouse was moved. Now it stays at its initial position. There are still some issues with it when changing between OpenGL and SurfaceSDL at the same time as toggling fullscreen. But it is not worse than before.
2017-11-11SDL: Fix display artefacts with transparent OSD messageThierry Crozat
If we do not update the area below the message, it is just blitted on top of itself again and again and gets progressively less transparent. It also causes artefacts when the mouse pass below the OSD message.
2017-11-10Merge pull request #1041 from criezy/variadic-undefinedThierry Crozat
Fix undefined behaviour in variadic functions
2017-11-10XEEN: Fix event handling for town messagesPaul Gilbert
2017-11-10I18N: Update translations templatesThierry Crozat
2017-11-10SDL: fix various OSD message artifactsPatrik Dahlstrom
On the OpenPandora handheld, the OSD message would not render unless you moved the cursor in the area where it was supposed to show. Additionally, the OSD message was not transparent like in v1.8. This commit fixes both these issues.
2017-11-10XEEN: Fix rendering of town messagesPaul Gilbert
2017-11-10I18N: Update translation (Finnish)Timo Mikkolainen
Currently translated at 100.0% (960 of 960 strings)
2017-11-10I18N: Update translation (German)Lothar Serra Mari
Currently translated at 100.0% (960 of 960 strings)
2017-11-10I18N: Update translation (Hungarian)George Kormendi
Currently translated at 100.0% (960 of 960 strings)
2017-11-10I18N: Update translations templatesThierry Crozat
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