summaryrefslogtreecommitdiff
path: root/indra/lscript/lscript_execute
diff options
context:
space:
mode:
authorAndrew Meadows <andrew@lindenlab.com>2009-01-17 01:29:45 +0000
committerAndrew Meadows <andrew@lindenlab.com>2009-01-17 01:29:45 +0000
commit15a6d273cc00e1f4f9f9d56d8c878b46b283b289 (patch)
treef4ac9fa1f96c6d246b571412ce6a67ee1837794d /indra/lscript/lscript_execute
parent446c55538e1fb12d8a1feb541edf99c16bb29121 (diff)
svn merge -r108142:108148 svn+ssh://svn.lindenlab.com/svn/linden/qa/maint-server/maint-server-5-r108113
Diffstat (limited to 'indra/lscript/lscript_execute')
-rw-r--r--indra/lscript/lscript_execute/lscript_execute.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/indra/lscript/lscript_execute/lscript_execute.cpp b/indra/lscript/lscript_execute/lscript_execute.cpp
index 43834758f1..5630f2de0b 100644
--- a/indra/lscript/lscript_execute/lscript_execute.cpp
+++ b/indra/lscript/lscript_execute/lscript_execute.cpp
@@ -42,6 +42,10 @@
#include "lscript_heapruntime.h"
#include "lscript_alloc.h"
+// Static
+const S32 DEFAULT_SCRIPT_TIMER_CHECK_SKIP = 4;
+S32 LLScriptExecute::sTimerCheckSkip = DEFAULT_SCRIPT_TIMER_CHECK_SKIP;
+
void (*binary_operations[LST_EOF][LST_EOF])(U8 *buffer, LSCRIPTOpCodesEnum opcode);
void (*unary_operations[LST_EOF])(U8 *buffer, LSCRIPTOpCodesEnum opcode);
@@ -924,7 +928,7 @@ void LLScriptExecute::runInstructions(BOOL b_print, const LLUUID &id,
// Run for a single timeslice, or until a yield or state transition is due
F32 LLScriptExecute::runQuanta(BOOL b_print, const LLUUID &id, const char **errorstr, F32 quanta, U32& events_processed, LLTimer& timer)
{
- U32 timer_checks = 0;
+ S32 timer_checks = 0;
F32 inloop = 0;
// Loop while not finished, yield not due and time remaining
@@ -936,12 +940,11 @@ F32 LLScriptExecute::runQuanta(BOOL b_print, const LLUUID &id, const char **erro
runInstructions(b_print, id, errorstr,
events_processed, quanta);
- static const S32 lsl_timer_check_skip = 4;
if(isYieldDue())
{
break;
}
- else if(timer_checks++ == lsl_timer_check_skip)
+ else if(timer_checks++ >= LLScriptExecute::sTimerCheckSkip)
{
inloop = timer.getElapsedTimeF32();
if(inloop > quanta)