/[svn]/linuxsampler/trunk/src/scriptvm/CoreVMFunctions.cpp
ViewVC logotype

Diff of /linuxsampler/trunk/src/scriptvm/CoreVMFunctions.cpp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3563 by schoenebeck, Fri Aug 23 11:44:00 2019 UTC revision 3564 by schoenebeck, Sat Aug 24 09:18:57 2019 UTC
# Line 131  bool CoreVMFunction_wait::acceptsArgUnit Line 131  bool CoreVMFunction_wait::acceptsArgUnit
131          return type == VM_NO_UNIT;          return type == VM_NO_UNIT;
132  }  }
133    
134  bool CoreVMFunction_wait::acceptsArgUnitPrefix(vmint iArg) const {  bool CoreVMFunction_wait::acceptsArgUnitPrefix(vmint iArg, StdUnit_t type) const {
135      return iArg == 0;      return iArg == 0 && type == VM_SECOND;
136  }  }
137    
138  VMFnResult* CoreVMFunction_wait::exec(VMFnArgs* args) {  VMFnResult* CoreVMFunction_wait::exec(VMFnArgs* args) {
139      ExecContext* ctx = dynamic_cast<ExecContext*>(vm->currentVMExecContext());      ExecContext* ctx = dynamic_cast<ExecContext*>(vm->currentVMExecContext());
140      VMIntExpr* expr = dynamic_cast<VMIntExpr*>(args->arg(0));      VMIntExpr* expr = dynamic_cast<VMIntExpr*>(args->arg(0));
141      vmint us = expr->evalInt(VM_MICRO);      StdUnit_t unit = expr->unitType();
142        vmint us = (unit) ? expr->evalInt(VM_MICRO) : expr->evalInt();
143      if (us < 0) {      if (us < 0) {
144          wrnMsg("wait(): argument may not be negative! Aborting script!");          wrnMsg("wait(): argument may not be negative! Aborting script!");
145          this->result.flags = STMT_ABORT_SIGNALLED;          this->result.flags = STMT_ABORT_SIGNALLED;

Legend:
Removed from v.3563  
changed lines
  Added in v.3564

  ViewVC Help
Powered by ViewVC