Save and restore ok when switching interpreters.

This commit is contained in:
Andreas Gal 2008-06-11 09:01:29 -07:00
parent e90aa46c27
commit 3e75d9e04e
2 changed files with 3 additions and 1 deletions

View File

@ -2701,6 +2701,7 @@ JS_INTERPRET(JSContext *cx, JSInterpreterState *state)
(s)->originalVersion = originalVersion; \
(s)->mark = mark; \
(s)->regs = regs; \
(s)->ok = ok; \
(s)->next = n; \
JS_END_MACRO
@ -2712,13 +2713,13 @@ JS_INTERPRET(JSContext *cx, JSInterpreterState *state)
originalVersion = (s)->originalVersion; \
mark = (s)->mark; \
regs = (s)->regs; \
ok = (s)->ok; \
switch ((s)->next) { \
case JS_NEXT_CONTINUE: \
op = (JSOp) *regs.pc; \
DO_OP(); \
break; \
case JS_NEXT_EXIT: \
ok = JS_TRUE; \
goto exit; \
default: \
JS_ASSERT((s)->next == JS_NEXT_ERROR); \

View File

@ -113,6 +113,7 @@ typedef struct JSInterpreterState {
void *mark;
JSFrameRegs regs;
int next;
bool ok;
};
/* JS stack frame flags. */