如果使用JS_NewGlobalObject:SpiderMonkey,程序崩溃

时间:2012-10-29 10:57:22

标签: javascript c++ mozilla spidermonkey

我正在使用最新版本的SpiderMonkey(js185-1.0.0.tar.gz),当我运行嵌入Javascript的示例程序时,崩溃程序

示例程序直接来自the docs

如果我使用JS_NewCompartmentAndGlobalObject,程序运行正常 但文档提到使用JS_NewGlobalObject因为它是“自JSAPI 16以来已过时”

因此我将JS_NewCompartmentAndGlobalObject替换为JS_NewGlobalObject,然后示例程序在sample program found here

中的第55行崩溃

这里有什么解决方案?

我使用的是CentOS 6.2 64位版本。

1 个答案:

答案 0 :(得分:2)

弃用可能与recent change如何在SM中创建隔离区有关(现在每个新的全局都会默认获得自己的隔间)。

你应该使用JS_NewCompartmentAndGlobalObject,因为在JS 1.8.5发布72周后,该函数仅在JSAPI 16中弃用:)