diff options
author | Vincent Sanders <vince@netsurf-browser.org> | 2012-06-16 12:06:47 +0000 |
---|---|---|
committer | Vincent Sanders <vince@netsurf-browser.org> | 2012-06-16 12:06:47 +0000 |
commit | 9dc376bdec204f1cbaf669808fd2e22c79857f27 (patch) | |
tree | 818b08e9de162cab252f4002e332caff8b0500ca /javascript | |
parent | a5f2a8cfba8b0c9cd30998d714c5ce09d2f46c34 (diff) | |
download | netsurf-9dc376bdec204f1cbaf669808fd2e22c79857f27.tar.gz netsurf-9dc376bdec204f1cbaf669808fd2e22c79857f27.tar.bz2 |
use the correct version macro
svn path=/trunk/netsurf/; revision=13966
Diffstat (limited to 'javascript')
-rw-r--r-- | javascript/js.c | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/javascript/js.c b/javascript/js.c index 81dc96be6..833e01785 100644 --- a/javascript/js.c +++ b/javascript/js.c @@ -29,6 +29,11 @@ static JSRuntime *rt; /* global runtime */ void js_initialise(void) { /* Create a JS runtime. */ + +#if JS_VERSION >= 180 + JS_SetCStringsAreUTF8(); /* we prefer our runtime to be utf-8 */ +#endif + rt = JS_NewRuntime(8L * 1024L * 1024L); LOG(("New runtime handle %p", rt)); } @@ -85,13 +90,23 @@ void js_destroycontext(jscontext *ctx) /* The class of the global object. */ static JSClass global_class = { - "global", JSCLASS_GLOBAL_FLAGS, - JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, JS_PropertyStub, - JS_EnumerateStub, JS_ResolveStub, JS_ConvertStub, JS_FinalizeStub, - JSCLASS_NO_OPTIONAL_MEMBERS + "global", + JSCLASS_GLOBAL_FLAGS, + JS_PropertyStub, + JS_PropertyStub, + JS_PropertyStub, +#if JS_VERSION <= 180 + JS_PropertyStub, +#else + JS_StrictPropertyStub, +#endif + JS_EnumerateStub, + JS_ResolveStub, + JS_ConvertStub, + JS_FinalizeStub, + JSCLASS_NO_OPTIONAL_MEMBERS }; - jsobject *js_newcompartment(jscontext *ctx, struct content* c) { JSContext *cx = (JSContext *)ctx; @@ -100,17 +115,18 @@ jsobject *js_newcompartment(jscontext *ctx, struct content* c) if (cx == NULL) { return NULL; } -#ifdef SPIDERMONKEY_400 - global = JS_NewCompartmentAndGlobalObject(cx, &global_class, NULL); + +#if JS_VERSION <= 180 + global = JS_NewObject(cx, &global_class, NULL, NULL); if (global == NULL) { return NULL; } + JS_SetGlobalObject(cx, global); #else - global = JS_NewObject(cx, &global_class, NULL, NULL); + global = JS_NewCompartmentAndGlobalObject(cx, &global_class, NULL); if (global == NULL) { return NULL; } - JS_SetGlobalObject(cx, global); #endif JS_SetContextPrivate(cx, c); /* private pointer to content */ |