From ee606ac24dde01be4e5600a9700fdefc93c2bfbe Mon Sep 17 00:00:00 2001 From: "rginda%netscape.com" Date: Tue, 24 Apr 2001 23:02:58 +0000 Subject: [PATCH] - not built - patch from peterv. We can't use js_* in this module because they're libjs' private stash. I got away with it on Linux somehow, but not on mac, and probably not on windows. jsd_EvaluateScriptInStackFrame now uses JS_EvaluateInStackFrame, instead of doing the inflation itself and calling JS_EvaluateUCInStackFrame. git-svn-id: svn://10.0.0.236/trunk@93033 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/js/jsd/jsd_stak.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/mozilla/js/jsd/jsd_stak.c b/mozilla/js/jsd/jsd_stak.c index 98118aa4dd7..6173467ac17 100644 --- a/mozilla/js/jsd/jsd_stak.c +++ b/mozilla/js/jsd/jsd_stak.c @@ -25,7 +25,6 @@ */ #include "jsd.h" -#include "jsstr.h" #ifdef DEBUG void JSD_ASSERT_VALID_THREAD_STATE(JSDThreadState* jsdthreadstate) @@ -333,9 +332,9 @@ jsd_EvaluateScriptInStackFrame(JSDContext* jsdc, const char *bytes, uintN length, const char *filename, uintN lineno, jsval *rval) { - jschar *chars; + JSBool retval; JSBool valid; - JSBool ok; + JSExceptionState* exceptionState; JSContext *cx; JS_ASSERT(JSD_CURRENT_THREAD() == jsdthreadstate->thread); @@ -349,14 +348,15 @@ jsd_EvaluateScriptInStackFrame(JSDContext* jsdc, cx = jsdthreadstate->context; JS_ASSERT(cx); - - chars = js_InflateString(cx, bytes, length); - if (!chars) - return JS_FALSE; - ok = jsd_EvaluateUCScriptInStackFrame(jsdc, jsdthreadstate, jsdframe, chars, - length, filename, lineno, rval); - JS_free(cx, chars); - return ok; + + exceptionState = JS_SaveExceptionState(cx); + jsd_StartingEvalUsingFilename(jsdc, filename); + retval = JS_EvaluateInStackFrame(cx, jsdframe->fp, bytes, length, + filename, lineno, rval); + jsd_FinishedEvalUsingFilename(jsdc, filename); + JS_RestoreExceptionState(cx, exceptionState); + + return retval; } JSString*