aboutsummaryrefslogtreecommitdiff
path: root/engines/director/lingo
diff options
context:
space:
mode:
authorEugene Sandulenko2016-08-12 17:32:28 +0200
committerEugene Sandulenko2016-08-12 17:45:21 +0200
commitc9bee722075a01860fd0c55ad4e6f9076a509084 (patch)
tree1b192cb03ac91ce38acc19bbfbdef6c073ea32fa /engines/director/lingo
parent1507cdca2d7a7ef8504bdff0c0eb9ec2dd15a054 (diff)
downloadscummvm-rg350-c9bee722075a01860fd0c55ad4e6f9076a509084.tar.gz
scummvm-rg350-c9bee722075a01860fd0c55ad4e6f9076a509084.tar.bz2
scummvm-rg350-c9bee722075a01860fd0c55ad4e6f9076a509084.zip
DIRECTOR: Lingo: Fix factory method argument count
Diffstat (limited to 'engines/director/lingo')
-rw-r--r--engines/director/lingo/lingo-gr.cpp2
-rw-r--r--engines/director/lingo/lingo-gr.y2
2 files changed, 2 insertions, 2 deletions
diff --git a/engines/director/lingo/lingo-gr.cpp b/engines/director/lingo/lingo-gr.cpp
index 09b6dc938d..b54619c8cc 100644
--- a/engines/director/lingo/lingo-gr.cpp
+++ b/engines/director/lingo/lingo-gr.cpp
@@ -2475,7 +2475,7 @@ yyreduce:
{
g_lingo->codeConst(0); // Push fake value on stack
g_lingo->code1(g_lingo->c_procret);
- g_lingo->define(*(yyvsp[(2) - (8)].s), (yyvsp[(4) - (8)].code), (yyvsp[(5) - (8)].narg), &g_lingo->_currentFactory);
+ g_lingo->define(*(yyvsp[(2) - (8)].s), (yyvsp[(4) - (8)].code), (yyvsp[(5) - (8)].narg) + 1, &g_lingo->_currentFactory);
g_lingo->_indef = false; ;}
break;
diff --git a/engines/director/lingo/lingo-gr.y b/engines/director/lingo/lingo-gr.y
index f8c6aa3629..7f6a71c13c 100644
--- a/engines/director/lingo/lingo-gr.y
+++ b/engines/director/lingo/lingo-gr.y
@@ -500,7 +500,7 @@ defn: tMACRO ID { g_lingo->_indef = true; g_lingo->_currentFactory.clear(); }
begin argdef nl argstore stmtlist {
g_lingo->codeConst(0); // Push fake value on stack
g_lingo->code1(g_lingo->c_procret);
- g_lingo->define(*$2, $4, $5, &g_lingo->_currentFactory);
+ g_lingo->define(*$2, $4, $5 + 1, &g_lingo->_currentFactory);
g_lingo->_indef = false; } ;
argdef: /* nothing */ { $$ = 0; }
| ID { g_lingo->codeArg($1); $$ = 1; }