[Scummvm-git-logs] scummvm master -> a5fee8e08639285d4969d733d168e0d881bffc03

sev- noreply at scummvm.org
Tue Oct 14 10:59:01 UTC 2025


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

Summary:
a5fee8e086 DIRECTOR: LINGO: Throttle down updateScreen() calls in the execution loop


Commit: a5fee8e08639285d4969d733d168e0d881bffc03
    https://github.com/scummvm/scummvm/commit/a5fee8e08639285d4969d733d168e0d881bffc03
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2025-10-14T12:58:32+02:00

Commit Message:
DIRECTOR: LINGO: Throttle down updateScreen() calls in the execution loop

Changed paths:
    engines/director/lingo/lingo.cpp


diff --git a/engines/director/lingo/lingo.cpp b/engines/director/lingo/lingo.cpp
index e4c4cf61422..ef9c8c406af 100644
--- a/engines/director/lingo/lingo.cpp
+++ b/engines/director/lingo/lingo.cpp
@@ -621,6 +621,7 @@ Common::String Lingo::formatFunctionBody(Symbol &sym) {
 
 bool Lingo::execute(int targetFrame) {
 	uint localCounter = 0;
+	uint lastUpdate = 0;
 
 	while (!_abort && !_freezeState && !_playDone && _state->script && (*_state->script)[_state->pc] != STOP) {
 		if (targetFrame != -1 && (int)_state->callstack.size() == targetFrame)
@@ -653,7 +654,10 @@ bool Lingo::execute(int targetFrame) {
 			Score *score = movie->getScore();
 			score->updateWidgets(true);
 
-			g_system->updateScreen();
+			if (g_system->getMillis() - lastUpdate > 10) {
+				lastUpdate = g_system->getMillis();
+				g_system->updateScreen();
+			}
 		}
 
 		uint current = _state->pc;




More information about the Scummvm-git-logs mailing list