From a3468d20e8b0e4f4954ac82f909f8f0e26b00870 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Sun, 29 Dec 2019 01:13:21 +0100 Subject: DIRECTOR: LINGO: Normalise parameters before usage in setTheCast() --- engines/director/lingo/lingo-the.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'engines') diff --git a/engines/director/lingo/lingo-the.cpp b/engines/director/lingo/lingo-the.cpp index 33c394db2a..a987f9c3c2 100644 --- a/engines/director/lingo/lingo-the.cpp +++ b/engines/director/lingo/lingo-the.cpp @@ -763,6 +763,7 @@ void Lingo::setTheCast(Datum &id1, int field, Datum &d) { warning("Lingo::setTheCast(): The cast %d not found. type: %d", id, castType); return; } + d.toString(); castInfo->fileName = *d.u.s; break; case kTheName: @@ -770,6 +771,7 @@ void Lingo::setTheCast(Datum &id1, int field, Datum &d) { warning("Lingo::setTheCast(): The cast %d not found. type: %d", id, castType); return; } + d.toString(); castInfo->name = *d.u.s; break; case kTheScriptText: @@ -777,13 +779,16 @@ void Lingo::setTheCast(Datum &id1, int field, Datum &d) { warning("Lingo::setTheCast(): The cast %d not found. type: %d", id, castType); return; } + d.toString(); castInfo->script = *d.u.s; break; case kTheWidth: + d.toInt(); score->getCastMemberInitialRect(id).setWidth(d.u.i); score->setCastMemberModified(id); break; case kTheHeight: + d.toInt(); score->getCastMemberInitialRect(id).setHeight(d.u.i); score->setCastMemberModified(id); break; @@ -793,6 +798,8 @@ void Lingo::setTheCast(Datum &id1, int field, Datum &d) { warning("Lingo::setTheCast(): Field %d of cast %d not found", field, id); } ShapeCast *shape = score->_loadedShapes->getVal(id); + + d.toInt(); shape->_bgCol = d.u.i; shape->_modified = 1; } -- cgit v1.2.3