Commit Graph
86814 Commits
Author SHA1 Message Date
Thierry Crozat 74b3b45c61 GUI: Fix possible access to free'ed memory or double deletion in tab widget
The issue could occur when adding or removing widgets to a tab, and then
not switching to a different tab before the destructor or reflowLayout() were
called. In such a case the firstWidget of the current widget in the _tabs list
could be out of date. Accessing this first widget from the destructor or from
reflowLayout() could then cause a crash, or random issues caused to access
to free'ed memory. In theory this could also lead to a memory leak, although
I don't think this could occur in our current code.

Usually we add several tabs to a TabWidget and then switch back to the first
tab after building all the tabs. So in such a case the issue would not occur.
But because we are deleting and reconstructing the clear buttons for the
MIDI and Path tabs of the options dialog from reflowLayout(), if the current
tab is the Path tab, it would be kept as active tab after adding and removing
widget to it and the issue would occur.

This fixes bug #9618.
2016-10-22 21:32:16 +01:00
Thierry Crozat 9f94294d80 GUI: Fix incorrect initialisation of some tab Ids in OptionsDialog
A value of 0 is valid for tab ids, so the correct initialisation at this
stage is -1. However only one constructor properly initialized all the
tab ids to -1 in its initialisation list, but it was then changed to 0 in
init(). I have added the missing ones to the other constructors and
removed the incorrect ones in init(). But maybe all tab ids should be
initialised in init() rather than in the constructors initialisation lists.
2016-10-22 21:32:16 +01:00
Thomas Fach-Pedersen 307321ec20 BLADERUNNER: Fix invalid assert in AudStream 2016-10-22 20:24:57 +02:00
Colin Snover 724385eb5e SCI32: Fix slow SCI2.1mid transitions
SSCI transitions code sends a large number of small show rects
to the graphics manager, one at a time, for each division of a
transition. Each time a rect is submitted, a call to showBits
is made. This design was used when transitions for SCI32 were
first implemented in ScummVM, and it worked OK because the
hardware surface was updated by EventManager::getSciEvent,
not showBits, so the large number of calls to showBits from the
transitions code did not adversely affect engine performance.

Later in SCI32 engine development, hardware surface updates
were changed to occur in showBits so that the hardware surface
would be updated at frame-out time, instead of at input-in time.
This change meant that now the large number of calls to showBits
from transitions became very expensive, and the engine would
stall constantly refreshing the entire hardware surface.

To fix this problem, the transitions code now (1) maximises the
size of rects coming from transitions, when possible, and (2) only
calls showBits when all the rects from one frame of a transition
have been calculated and added to the show rects list.

Additionally, there were some arithmetic errors in the
implementation of pixel dissolve that have been corrected in this
changeset.

Fixes Trac#9614.
2016-10-22 13:18:38 -05:00
Ori Avtalion 5280632b51 SDL: Fix typos 2016-10-22 21:16:21 +03:00
Thomas Fach-Pedersen 669e6be438 BLADERUNNER: Fix uninitialized variable accesses
Fixes a couple of issues reported by valgrind and clang
sanitizers.

In particular, the initialization of Actor::_inCombat means that McCoy
no longer randomly has his gun out at the beginning of the game. In
SliceRenderer::drawInWorld, the assert of _sliceFramePtr has been
moved to after the call to setupFrameInWorld which is the method that
initializes the field. This misplaced assert caused the game to crash
for several people.
2016-10-22 18:46:28 +02:00
Paul Gilbert 41e6a5d2a6 TITANIC: Fix looping in CTrueTalkManager::triggerNPC 2016-10-22 12:33:07 -04:00
Paul Gilbert 2bf087d2b9 TITANIC: Workaround for Doorbot's 'cloak off' movie playback
The original starts a movie for the Doorbot taking his cloak off,
but then plays a cutscene of the doorbot first appearing. Because of
this delay, our VideoDecoder wasn't correctly playing the movie after.
To fix that, new movies are initially paused when started, and then
resumed the first time we try to do events checking for it
2016-10-22 11:40:51 -04:00
rootfather 8e328647dc I18N: Regenerate translations.dat 2016-10-22 17:12:45 +02:00
rootfather 9eb1500c4a I18N: Update German GUI translation 2016-10-22 17:06:32 +02:00
rootfather 853006204c NEWS/DE: Mention SDL2 filtering option 2016-10-22 17:02:27 +02:00
Marcus Comstedt b8e8c9c635 DC: Remove workaround for GCC bug #42841
We now require GCC 4.6, where this bug has been fixed.
2016-10-22 13:46:58 +02:00
Marcus Comstedt cd6f1e3f24 DC: Add Dreamcast specific clean target 2016-10-22 13:46:58 +02:00
Willem Jan Palenstijn bb2ec760f1 DISTS/FEDORA: Update spec build requirements 2016-10-22 12:19:05 +02:00
Colin Snover 90c2f77686 SCI32: Implement HShutterIn for SCI2.1mid+
Fixes Trac#9584.
2016-10-21 21:04:01 -05:00
Paul Gilbert 41d1e0a415 SHERLOCK: 3DO: Fixes to allow game to start 2016-10-21 20:01:14 -04:00
Willem Jan Palenstijn bbd5b89c13 BLADERUNNER: Fix presumable typo 2016-10-21 23:36:17 +02:00
Thierry Crozat 2882424306 IOS: Add support for filtering feature 2016-10-21 22:27:26 +01:00
Thierry Crozat 8b1bb08a6e GUI: Increase theme version
This should have been done when making changes to it but I forgot.
2016-10-21 21:33:53 +01:00
Eugene Sandulenko c8dca57555 PRINCE: Refactored detection code into widely accepted schema 2016-10-21 10:32:48 +02:00
Paul Gilbert 990bd641ae CREATE_PROJECT: Fix MSVC project creation with curl or SDL_Net enabled 2016-10-20 21:00:32 -04:00
Paul Gilbert 1981131f99 CREATE_PROJECT: Disable new net, curl, & sparkle for old MSVC versions 2016-10-20 19:38:58 -04:00
Thierry Crozat 4a9446490a IOS: Disable idle timer while an engine is running 2016-10-20 22:38:14 +01:00
Bastien Bouclet c1070e6929 CLOUD: Don't error out when PNG support is not enabled 2016-10-20 19:21:56 +02:00
Colin Snover c9ad2062db SCI32: Fix wrong value passed to updateInfoFlagViewVisible
updateInfoFlagViewVisible accepts a property index, not a selector
ID.

Fixes Trac#9583.
2016-10-20 11:33:30 -05:00
Colin Snover bd4b0dbbfd SCI32: Fix QFG4 version comments 2016-10-20 11:33:30 -05:00
Colin Snover 45f7aef8cb SCI32: Fix typo 2016-10-20 11:33:29 -05:00
Colin Snover 34bd1bcaa9 SCI32: Split out detection of features that cross SSCI versions 2016-10-20 11:33:29 -05:00
Colin Snover 55222ec06c SCI32: Fix zero-offset exports
Exports with a zero offset are supposed to point to the start of
the code block in the script hunk, but they were being ignored.

This may also apply to SCI1.1 games, but until that can be
verified, this fixes the zero-offset in only SCI32 games for now.
2016-10-20 11:33:08 -05:00
Eugene Sandulenko 950ee49382 UPDATES: Added MacOS 1.9.0.2, no changes.
It appears that Mac Sparkle does not ignore the Windows binaries,
and offers to upgrade to Windows executable. Thus, in the meantime
we supply binary with the version change only.
2016-10-20 08:38:50 +02:00
Hein-Pieter van Braam 5013eae243 WIN32: re-sort migration.txt
Kind of nit-picky but it was annoying me that it was ALMOST sorted.
2016-10-19 23:48:50 +02:00
Hein-Pieter van Braam 3f797173c0 WIN32: Nightlies will start using SDL2 2016-10-19 23:45:38 +02:00
Hein-Pieter van Braam 9af3c05561 WIN32: Add missing LICENSE files to migration.txt 2016-10-19 23:44:55 +02:00
Eugene Sandulenko 06ca6531ae DIRECTOR: Fix movie scanning 2016-10-19 21:53:18 +02:00
Eugene Sandulenko 4162295464 DIRECTOR: Lingo: Implemented getting 'the frame' entity 2016-10-19 21:47:44 +02:00
Eugene Sandulenko 428cc33851 UPDATES: Sparkle doesn't understand 1.9.0b, thus rename it to 1.9.0.2 2016-10-19 00:07:41 +02:00
Eugene Sandulenko 2b842d2ee2 UPDATES: Added Win32 1.9.0b build 2016-10-18 22:59:11 +02:00
Thierry Crozat fa8b665495 NEWS: Add filtering option for SDL2 2016-10-18 19:51:17 +01:00
Ori Avtalion fc85eb461d SDL: Fix typo in function name 2016-10-18 19:24:51 +03:00
Eugene Sandulenko d890f99c85 UPDATES: Actually put the updated Win32 binary to 1.9.0a 2016-10-18 13:40:23 +02:00
Bastien Bouclet 1d349e8244 VIDEO: Fix an off-by-one check in VideoDecoder::getTrack 2016-10-18 13:13:00 +02:00
Eugene Sandulenko 6ef67b9186 DIRECTOR: Further work on text cast loading and rendering 2016-10-18 11:50:12 +02:00
Eugene Sandulenko e19cb15943 GRAPHICS: Declared few methods in MacFontManager public 2016-10-18 11:50:12 +02:00
Eugene Sandulenko 0eac022f55 DIRECTOR: Added debug chanel for text rendering 2016-10-18 11:50:12 +02:00
Eugene Sandulenko 01cf3d2ebd GRAPHICS: Remove debug leftover 2016-10-18 11:50:12 +02:00
Eugene Sandulenko 6751bc39b4 UPDATE: Win32 buld was updated. There were 120 downloads 2016-10-18 09:55:22 +02:00
Kirben 4a1f3d76fd WIN32: Remove NSIS installer script, since it is no longer maintained, outdated, and leads to confusion. 2016-10-18 14:46:02 +11:00
Paul Gilbert 9f90b4b50b XEEN: Visual Studio compilation fix 2016-10-17 21:56:44 -04:00
angstsmurf ec06c04faa COMPOSER: Use setPixel() and getPixel() methods to read and write to private pixel member 2016-10-18 03:09:19 +02:00
angstsmurf c3994cd6ea COMPOSER: Add missing 'typename' prior to dependent type name 2016-10-18 03:03:15 +02:00