Commit Graph
137148 Commits
Author SHA1 Message Date
Colin Snover 5c89c39325 FULLPIPE: Fix memory leak of save game thumbnail 2017-11-18 22:35:12 +01:00
Colin Snover ff96db23df FULLPIPE: Fix leaks and unnecessary extra allocations in FullpipeEngine 2017-11-18 22:35:12 +01:00
Colin Snover 6f8a65c739 FULLPIPE: Fix memory leak & unnecessary heap allocation of Rects 2017-11-18 22:35:12 +01:00
Colin Snover 5ab7a12779 FULLPIPE: Fix memory leaks of inventory icons and items 2017-11-18 22:35:12 +01:00
Colin Snover ac593e045e FULLPIPE: Fix memory leaks in ModalVideoPlayer 2017-11-18 22:35:12 +01:00
Colin Snover 926bcb6740 FULLPIPE: Handle quit/RTL events correctly
Fixes Trac#10316.
2017-11-18 22:35:12 +01:00
Colin Snover a25246bebe FULLPIPE: Remove unnecessary extra allocation for RNG 2017-11-18 22:35:12 +01:00
Colin Snover a49b6648c8 FULLPIPE: Fix leaks of MGMSubItem 2017-11-18 22:35:12 +01:00
Colin Snover f41074b930 FULLPIPE: Improve memory ownership in Motion 2017-11-18 22:35:12 +01:00
Colin Snover cc905d7f9a FULLPIPE: Make TODO labelled so it is picked up by tools 2017-11-18 22:35:12 +01:00
Colin Snover 0cc0b1932e FULLPIPE: Fix memory leaks, ownership issues, and endianness issues in graphics code 2017-11-18 22:35:12 +01:00
Colin Snover 8e0c53de18 FULLPIPE: Fix whitespace errors 2017-11-18 22:35:12 +01:00
Colin Snover 88a2eaba93 FULLPIPE: Make dimensions/coordinate getters pure functions 2017-11-18 22:35:12 +01:00
Colin Snover 136223026e FULLPIPE: Remove illegal C-style cast to incompatible type 2017-11-18 22:35:12 +01:00
Colin Snover 72a4292727 FULLPIPE: Improve memory safety and fix leaks in sound code 2017-11-18 22:35:12 +01:00
Colin Snover 8f1d76d261 FULLPIPE: Improve memory safety and typing of NGIArchive 2017-11-18 22:35:12 +01:00
Colin Snover 92f5718e2b FULLPIPE: Fix illegal C-style cast to incompatible type 2017-11-18 22:35:12 +01:00
Colin Snover 076667dc00 COMMON: Add limited support for custom deleters to ScopedPtr
Custom deleters of ScopedPtr are not currently fully conforming to
C++11's support for custom deleters in std::unique_ptr for the
sake of simplicity of implementation. Unlike in the standard
library, plain functions and lvalue references are not supported,
nor may custom deleters be passed to the constructor at runtime.
This can be improved in the future, if necessary, by doing what
standard library implementations usually do and creating a Pair
class that uses the Empty Base Optimization idiom to avoid extra
storage overhead of the deleter instance when it is not needed, as
in typical standard library implementations, plus some additional
type traits to support the necessary metaprogramming for the
different type overloads.
2017-11-18 22:35:12 +01:00
Zbyněk Schwarz 62d6a80c86 I18N: Update translation (Czech)
Currently translated at 96.0% (922 of 960 strings)
2017-11-18 10:33:28 +01:00
Ivan Avdeev 11d28abaa0 NEVERHOOD: fix musical hut crash in DR, bug #7085 2017-11-18 10:33:22 +01:00
Colin Snover 61a63f8400 CREATE_PROJECT: Fix compilation failure in C++11 mode
Getting the address of an rvalue is invalid, and not necessary
here.

Once C++11 can be used always, this utility function can just be
replaced with std::to_string.
2017-11-17 22:47:59 -06:00
Colin Snover 6c40ceded1 TITANIC: Fix compilation failure in C++11 mode 2017-11-17 22:47:59 -06:00
Colin Snover 87285ef609 SWORD25: Fix possible redefinition of FLT_EPSILON 2017-11-17 22:47:59 -06:00
Paul Gilbert 7361da9fdc XEEN: Fix Coverity identified problems 2017-11-17 20:52:18 -05:00
Paul Gilbert ef8cf2a543 XEEN: Fix music channel loop 2017-11-17 19:23:51 -05:00
Colin Snover d3a831644c SDL: Grab mouse when ScummVM is started in fullscreen mode 2017-11-17 12:01:35 -06:00
Zbyněk Schwarz 34abce7478 I18N: Update translation (Czech)
Currently translated at 92.3% (887 of 960 strings)
2017-11-17 02:59:16 +01:00
Paul Gilbert 6421170f92 XEEN: Map and game flag fixes 2017-11-16 20:59:07 -05:00
Paul Gilbert 2b823d63d4 XEEN: Fix some Coverity warnings 2017-11-15 20:36:04 -05:00
Paul Gilbert a97a9507c9 XEEN: Fix uninitialized instance field warnings 2017-11-15 19:32:03 -05:00
rootfather 1adc4ac58d WIN32: Add German Start Menu entries to the installer 2017-11-15 21:58:27 +01:00
Lothar Serra Mari f43c40ffef I18N: Update translation (German)
Currently translated at 100.0% (960 of 960 strings)
2017-11-15 18:36:40 +01:00
Colin Snover 9bbf7f3f36 SDL: Don't pass null pointers to SDL_DestroyTexture/SDL_DestroyRenderer
SDL does not like this and will raise an assertion when built with
internal SDL assertions turned on. With internal assertions turned
off, it will still call SDL_SetError any time a null pointer is
passed, though it will not raise an assertion or crash.
2017-11-15 11:36:14 -06:00
Paul Gilbert 74612b40f7 XEEN: Fix some Coverity warnings 2017-11-14 21:06:12 -05:00
Thierry Crozat e83ede4f07 I18N: Update translations templates 2017-11-15 00:50:15 +01:00
Filippos Karapetis 64b57afe2c Revert "DRASCULA: Revert range 4dbed774..1f1d8607"
This reverts commit bf69b25e33.

The original game had slight differences between the code for each
chapter. Part of these changes was to simplify the code and unify
some of these differences, particularly in the checks for clickable
areas, where the code is using Common::Rects with contains() now.

I have play tested the whole game with these changes, there are no
visible regressions, and the game is still completable. Thus, I'm
restoring the changes to the engine.
2017-11-15 01:49:50 +02:00
Thierry Crozat b48d1b7b8e I18N: Update translations templates 2017-11-14 19:19:17 +01:00
Willem Jan Palenstijn bf69b25e33 DRASCULA: Revert range 4dbed774..1f1d8607
This reverts
1f1d8607 DRASCULA: Merge the floor coordinates into _walkRect
1e1b6f7c DRASCULA: Rename gotoObject() to walkToPoint() and simplify it
2bf05c2a DRASCULA: Clean up room variables, and simplify some related checks

Reverting due to unanswered questions about why the changes in behaviour
in 2bf05c2a74 are correct.
2017-11-14 19:14:00 +01:00
Zbyněk Schwarz c8d3429ab4 I18N: Update translation (Czech)
Currently translated at 90.8% (872 of 960 strings)
2017-11-14 13:28:49 +01:00
Paul Gilbert a1eed0aa70 XEEN: Added missing initialization for new games 2017-11-14 07:28:40 -05:00
Willem Jan Palenstijn 3ac39075c8 GRAPHICS: Fix potentially uninitialized pointers in BDF loader 2017-11-14 09:12:15 +01:00
Bastien Bouclet 65d0984364 GRAPHICS: Fix freeing invalid pointers in the BDF font destructor
Fixes a crash on exit when using a non default GUI font.
Possibly fixes #10318.
2017-11-14 06:41:06 +01:00
Eugene Sandulenko 327dcf98ec DRASCULA: Make remaining static texts translatable
drascula.dat file version bumped
2017-11-14 04:07:11 +01:00
Paul Gilbert 2ab66e7803 XEEN: Added giveBankInterest method 2017-11-13 20:46:37 -05:00
Paul Gilbert 13a53f3731 XEEN: Added resetBlacksmithWares method 2017-11-13 20:37:29 -05:00
Paul Gilbert 6412dc5f0e XEEN: Fix compiler warnings 2017-11-13 17:40:44 -05:00
Paul Gilbert 5a17a96c38 TITANIC: Fix switch fall throughs 2017-11-13 07:37:07 -05:00
Bastien Bouclet 0b28ea9884 COMPOSER: Fix the detection for the French Gregory version
The commit message of 2739d8fa2 says this is for the French version. The
language was set to English by mistake.

Ref#6548
2017-11-13 07:25:37 +01:00
Colin Snover a6659ba9d5 DREAMWEB: Use accurate memory reclamation for Ex transfers
When the Ex memory regions are close to full, it is possible for
the game to fail to purge objects and then crash with an OOM error
even if it isn't actually out of memory. This patch calculates the
amount of free memory truly needed when allocating to Ex memory to
allow exactly the entire frame & text regions to be used, instead
previously where a hard-coded amount of free space to maintain was
used, which guaranteed that the entire memory region could not
actually be used by the game.

This change may be masking some underlying memory leak, or it may
just be that near the end of the game the game naturally comes
close to reaching the maximum memory region size. For the moment,
I am assuming the latter.

This commit also adds some assertion checks to the memory transfer
functions to make sure the regions don't quietly overflow in other
cases, since pickupConts performs transfers in a manner that
doesn't ensure enough free memory exists for them to be successful.

Fixes Trac#6820.
2017-11-12 23:15:05 -06:00
Colin Snover 0eda63bed1 SCUMM: Fix race condition in MOD player
Fixes Trac#6272.
2017-11-12 23:15:05 -06:00