Update squirrel to 2.2.4 (keeping const-correctness of sqstdstream)
[supertux.git] / external / squirrel / squirrel / sqvm.cpp
index 9b1827a..d243193 100644 (file)
@@ -327,8 +327,8 @@ bool SQVM::StartCall(SQClosure *closure,SQInteger target,SQInteger args,SQIntege
        SQInteger nargs = args;
        if (paramssize != nargs) {
                SQInteger ndef = func->_ndefaultparams;
-               if(ndef && nargs < paramssize) {
-                       SQInteger diff = paramssize - nargs;
+               SQInteger diff;
+               if(ndef && nargs < paramssize && (diff = paramssize - nargs) <= ndef) {
                        for(SQInteger n = ndef - diff; n < ndef; n++) {
                                _stack._vals[stackbase + (nargs++)] = closure->_defaultparams[n];
                        }