[Scummvm-git-logs] scummvm master -> 68c6eed477ba906edb246b5483cd4038cd631fc1

aquadran aquadran at gmail.com
Sat Feb 13 14:01:47 UTC 2021


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:
68c6eed477 ICB: Clear top and down of surface for bink movies


Commit: 68c6eed477ba906edb246b5483cd4038cd631fc1
    https://github.com/scummvm/scummvm/commit/68c6eed477ba906edb246b5483cd4038cd631fc1
Author: Paweł Kołodziejski (aquadran at users.sourceforge.net)
Date: 2021-02-13T15:01:42+01:00

Commit Message:
ICB: Clear top and down of surface for bink movies

Changed paths:
    engines/icb/movie_pc.cpp


diff --git a/engines/icb/movie_pc.cpp b/engines/icb/movie_pc.cpp
index 0f92c4bd71..f268aed881 100644
--- a/engines/icb/movie_pc.cpp
+++ b/engines/icb/movie_pc.cpp
@@ -412,6 +412,10 @@ uint32 MovieManager::drawFrame(uint32 surface_id) {
 	pitch = surface_manager->Get_pitch(surface_id);
 	uint32 height = surface_manager->Get_height(surface_id);
 
+	for (int i = 0; i < _y; i++) {
+		memset(surface_address + i * pitch, 0, MIN(surface->pitch, pitch));
+	}
+
 	for (int i = 0; i < surface->h; i++) {
 		if (i + _y >= height) {
 			warning("Movie out of bounds");
@@ -420,6 +424,10 @@ uint32 MovieManager::drawFrame(uint32 surface_id) {
 		memcpy(surface_address + (i + _y) * pitch, surface->getBasePtr(0, i), MIN(surface->pitch, pitch));
 	}
 
+	for (int i = _y + surface->h; i < height; i++) {
+		memset(surface_address + i * pitch, 0, MIN(surface->pitch, pitch));
+	}
+
 	// Unlock the buffer
 	surface_manager->Unlock_surface(surface_id);
 	return JUSTFINE;




More information about the Scummvm-git-logs mailing list