[Scummvm-git-logs] scummvm master -> f4099d1f87e94291db84d0fa37b65c69e40d394c
fracturehill
noreply at scummvm.org
Tue Nov 26 10:32:55 UTC 2024
This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .
Summary:
29aba2c259 NANCY: Fix startup crash in The Vampire Diaries
f4099d1f87 NANCY: Fix OrderingPuzzle in The Vampire Diaries
Commit: 29aba2c25944da060cb09259ab93a3b2caf12211
https://github.com/scummvm/scummvm/commit/29aba2c25944da060cb09259ab93a3b2caf12211
Author: Kaloyan Chehlarski (strahy at outlook.com)
Date: 2024-11-26T11:32:23+01:00
Commit Message:
NANCY: Fix startup crash in The Vampire Diaries
It seems AVIDecoder::decodeNextFrame() may return a
nullptr instead of a surface.
Changed paths:
engines/nancy/state/logo.cpp
diff --git a/engines/nancy/state/logo.cpp b/engines/nancy/state/logo.cpp
index af7b672a360..f57103cf1b6 100644
--- a/engines/nancy/state/logo.cpp
+++ b/engines/nancy/state/logo.cpp
@@ -114,8 +114,11 @@ void Logo::init() {
// play the video before the game logo
void Logo::playIntroVideo() {
if (_tvdVideoDecoder.needsUpdate()) {
- _videoObj._drawSurface.blitFrom(*_tvdVideoDecoder.decodeNextFrame());
- _videoObj.setVisible(true);
+ const Graphics::Surface *frame = _tvdVideoDecoder.decodeNextFrame();
+ if (frame) {
+ _videoObj._drawSurface.blitFrom(*frame);
+ _videoObj.setVisible(true);
+ }
}
if (_tvdVideoDecoder.endOfVideo() || (g_nancy->_input->getInput().input & NancyInput::kLeftMouseButtonDown)) {
_state = kStartSound;
Commit: f4099d1f87e94291db84d0fa37b65c69e40d394c
https://github.com/scummvm/scummvm/commit/f4099d1f87e94291db84d0fa37b65c69e40d394c
Author: Kaloyan Chehlarski (strahy at outlook.com)
Date: 2024-11-26T11:32:24+01:00
Commit Message:
NANCY: Fix OrderingPuzzle in The Vampire Diaries
Reading of the data was wrong after a refactoring and
rendered the game unfinishable.
Changed paths:
engines/nancy/action/puzzle/orderingpuzzle.cpp
diff --git a/engines/nancy/action/puzzle/orderingpuzzle.cpp b/engines/nancy/action/puzzle/orderingpuzzle.cpp
index 93fdbab40ff..aa85295db79 100644
--- a/engines/nancy/action/puzzle/orderingpuzzle.cpp
+++ b/engines/nancy/action/puzzle/orderingpuzzle.cpp
@@ -187,10 +187,27 @@ void OrderingPuzzle::readData(Common::SeekableReadStream &stream) {
}
}
- _solveExitScene.readData(stream, ser.getVersion() == kGameTypeVampire);
+ if (ser.getVersion() == kGameTypeVampire) {
+ _solveExitScene._sceneChange.readData(stream, true);
+ ser.skip(2); // shouldStopRendering
+ ser.syncAsSint16LE(_solveExitScene._flag.label);
+ ser.syncAsByte(_solveExitScene._flag.flag);
+ } else {
+ _solveExitScene.readData(stream);
+ }
+
ser.syncAsUint16LE(_solveSoundDelay);
_solveSound.readNormal(stream);
- _exitScene.readData(stream, ser.getVersion() == kGameTypeVampire);
+
+ if (ser.getVersion() == kGameTypeVampire) {
+ _exitScene._sceneChange.readData(stream, true);
+ ser.skip(2); // shouldStopRendering
+ ser.syncAsSint16LE(_exitScene._flag.label);
+ ser.syncAsByte(_exitScene._flag.flag);
+ } else {
+ _exitScene.readData(stream);
+ }
+
readRect(stream, _exitHotspot);
if (isKeypad && g_nancy->getGameType() >= kGameTypeNancy7) {
More information about the Scummvm-git-logs
mailing list