aboutsummaryrefslogtreecommitdiff
path: root/engines
AgeCommit message (Collapse)Author
2017-04-16SCI: Improve MidiParser_SCI robustness against bad sound resourcesColin Snover
1. KQ4 sound 104 has an extra 0xFC (MIDI Stop command/kEndOfTrack) at the end of the resource, which causes an out-of-bounds read because the filtering loop continues after the first 0xFC and unconditionally attempts to read 2 bytes (expecting there to always be a delta value + a command, whereas in this file there is only another kEndOfTrack command). This is corrected by exiting the filtering loop when a kEndOfTrack is encountered and there is not enough data remaining in the resource to continue reading. 2. KQ5 sound 699 is truncated, which causes the parser to attempt to read past the end of the resource. This is addressed by adding bounds checks that exit the mix loop early if there is no more data available to read. This allows truncated sounds to be played as far as possible (previously, trying to read truncated resources would result in a fatal error). 3. midiMixChannels allocates an arbitrary amount of raw memory for the mixed MIDI sequence, without performing any bounds checking when writing to this memory, potentially leading to a crash or silent corruption of adjacent memory. This is mitigated by using SciSpan instead of a raw pointer for the mixed data. Fixes Trac#9727.
2017-04-16TITANIC: Extra debugging info for starfield movementPaul Gilbert
2017-04-16TITANIC: Renamed CStarControlSub20 to CCameraMoverPaul Gilbert
2017-04-16TITANIC: Fix GCC Unused Variable Warning.D G Turner
2017-04-15TITANIC: Renaming methods for setting camera movementPaul Gilbert
2017-04-15TITANIC: Renaming movement counter fieldsPaul Gilbert
2017-04-15TITANIC: Movement starting to work when star is clickedPaul Gilbert
2017-04-15TITANIC: Renaming and fixes for movers active flagPaul Gilbert
2017-04-15TITANIC: Remove hard-coded starfield positionPaul Gilbert
2017-04-15TITANIC: Fixes for setting up star closeup sphere dataPaul Gilbert
2017-04-14DIRECTOR: Lingo: Added stub for generic event handlersEugene Sandulenko
2017-04-14SCI: Fix speech in QfG IV on big endian platformsThierry Crozat
2017-04-13DIRECTOR: D5 Shared Cast loading.stevenhoefel
2017-04-12TITANIC: Fix centroid calculations in star drawing methodsPaul Gilbert
2017-04-10TITANIC: Further cleanup of CStarCloseup drawPaul Gilbert
2017-04-10TITANIC: Cleaning up CStarCloseup drawPaul Gilbert
2017-04-10TITANIC: If statement fix in CStarCloseUp drawPaul Gilbert
2017-04-10TITANIC: Formatting fixPaul Gilbert
2017-04-10TITANIC: Temporarily lock camera for testing star closeup renderingPaul Gilbert
2017-04-10BLADERUNNER: added Leon AI scriptPeter Kohaut
Happy incept day Leon!
2017-04-09TITANIC: Fix CStarControlSub13 setPositionPaul Gilbert
2017-04-09TITANIC: Fix incorrect indexing in CStarCloseup setup2Paul Gilbert
2017-04-09TITANIC: Renaming of CStarCamera methodsPaul Gilbert
2017-04-09TITANIC: Rename CStarControlSub12 to CStarCameraPaul Gilbert
2017-04-09TITANIC: Rename CBaseStar to CBaseStarsPaul Gilbert
2017-04-09TITANIC: Rename CStarControlSub5 to CStarCloseupPaul Gilbert
2017-04-09TITANIC: Fix rendering of starfield pixelsPaul Gilbert
2017-04-08Merge pull request #936 from darkstar/xeen_detectionPaul Gilbert
Xeen: Add detection for the 2CD "talkie" version
2017-04-09DIRECTOR: Remove pointless comparison.Eugene Sandulenko
size is a byte, so it is always < 2048.
2017-04-07TITANIC: Shift vector returns from params to return valuesPaul Gilbert
2017-04-06TITANIC: Add missing initializer for CStarRef1Paul Gilbert
2017-04-06TITANIC: Fix gcc warningPaul Gilbert
2017-04-06TITANIC: Add missing content for OSVideoSurface::clearPaul Gilbert
2017-04-06DIRECTOR: Further work loading assets from D5 Movies.stevenhoefel
2017-04-05TITANIC: Further cleanup of pose usagesPaul Gilbert
2017-04-05TITANIC: Fix some incorrect type castsPaul Gilbert
2017-04-05TITANIC: Renamed CStarControlSub6 to FPosePaul Gilbert
2017-04-05TITANIC: Change many doubles to floats to match original's precisionPaul Gilbert
Many of the Star Control classes in the original explicitly used floats rather than doubles. I'm switching to using them where applicable for now, since the resulting figures will more closely match the original, and it will be easier to spot errors in the various formulas
2017-04-05DIRECTOR: Fix warningsEugene Sandulenko
2017-04-04TITANIC: Fix setup of Y_AXIS rotation matrixPaul Gilbert
2017-04-04TITANIC: Correct usage of x/y angle in setViewportPositionPaul Gilbert
2017-04-04TITANIC: Change debug level constants to have a DEBUG_ prefixPaul Gilbert
2017-04-04DIRECTOR: Initial work to load D5 assets.stevenhoefel
2017-04-03TITANIC: Add missing break to switch statementPaul Gilbert
2017-04-03DIRECTOR: Bring cast children back for D4 or higher.stevenhoefel
2017-04-03DIRECTOR: Use button cast when rendering button text.stevenhoefel
2017-04-03DIRECTOR: Pre-load Button child text members.stevenhoefel
2017-04-02TITANIC: Add missing code from CBaseStar draw3Paul Gilbert
2017-04-02Xeen: Add detection for the 2CD "talkie" versionMichael DrĂ¼ing
2017-04-02TITANIC: Add missing code in CBaseStar draw4Paul Gilbert