[Scummvm-cvs-logs] scummvm master -> 6d8eebbf7b7229c93b51e1f82c1cf980a4a7c79e

bgK bastien.bouclet at gmail.com
Sat Feb 13 17:58:20 CET 2016


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
6d8eebbf7b VIDEO: Stay on the first edit when playing QT videos backwards


Commit: 6d8eebbf7b7229c93b51e1f82c1cf980a4a7c79e
    https://github.com/scummvm/scummvm/commit/6d8eebbf7b7229c93b51e1f82c1cf980a4a7c79e
Author: Bastien Bouclet (bastien.bouclet at gmail.com)
Date: 2016-02-13T17:54:07+01:00

Commit Message:
VIDEO: Stay on the first edit when playing QT videos backwards

We don't support playing videos with multiple edits backwards. Taking the code
path to move to the next edit when playing backwards sets the current edit index
to an invalid value with the video still trying to play. Which results in out of
bounds reads, and ultimately a crash.

This fixes multiple crashes in Myst. Using the key without the chest on
Stoneship, resetting the clock tower puzzle, and using the switch in the trees
in Channelwood.

This was a regression introduced in a59f5db505ffce9567c3bc8adf30d2f843910d65.

Changed paths:
    video/qt_decoder.cpp



diff --git a/video/qt_decoder.cpp b/video/qt_decoder.cpp
index 324bf65..49034aa 100644
--- a/video/qt_decoder.cpp
+++ b/video/qt_decoder.cpp
@@ -447,7 +447,9 @@ const Graphics::Surface *QuickTimeDecoder::VideoTrackHandler::decodeNextFrame()
 	}
 
 	// Update the edit list, if applicable
-	if (endOfCurEdit()) {
+	// FIXME: Add support for playing backwards videos with more than one edit
+	// For now, stay on the first edit for reversed playback
+	if (endOfCurEdit() && !_reversed) {
 		_curEdit++;
 
 		if (atLastEdit())






More information about the Scummvm-git-logs mailing list