DIRECTOR: Lingo: Fix calling built-ins with variable number of parameters

This commit is contained in:
Eugene Sandulenko 2016-08-08 21:21:11 +02:00
parent 9dff05e51b
commit 0fe0b15d95

View File

@ -762,7 +762,7 @@ void Lingo::c_call() {
return; return;
} }
if (sym->nargs < nargs) { if (sym->nargs != -1 && sym->nargs < nargs) {
warning("Incorrect number of arguments for function %s. Dropping extra %d", name.c_str(), nargs - sym->nargs); warning("Incorrect number of arguments for function %s. Dropping extra %d", name.c_str(), nargs - sym->nargs);
for (int i = 0; i < nargs - sym->nargs; i++) for (int i = 0; i < nargs - sym->nargs; i++)
g_lingo->pop(); g_lingo->pop();