只要是js绑定就有这个问题,我试了几个版本,都不行。
崩溃代码如下
jsval spevent_to_jsval(JSContext* cx, spEvent& v)
{
JSObject *tmp = JS_NewObject(cx, NULL, NULL, NULL); //此处崩溃
if (!tmp) return JSVAL_NULL;
bool ok = JS_DefineProperty(cx, tmp, "data", speventdata_to_jsval(cx, *v.data), NULL, NULL, JSPROP_ENUMERATE | JSPROP_PERMANENT) &&
JS_DefineProperty(cx, tmp, "intValue", INT_TO_JSVAL(v.intValue), NULL, NULL, JSPROP_ENUMERATE | JSPROP_PERMANENT) &&
JS_DefineProperty(cx, tmp, "floatValue", DOUBLE_TO_JSVAL(v.floatValue), NULL, NULL, JSPROP_ENUMERATE | JSPROP_PERMANENT) &&
JS_DefineProperty(cx, tmp, "stringValue", c_string_to_jsval(cx, v.stringValue), NULL, NULL, JSPROP_ENUMERATE | JSPROP_PERMANENT);
if (ok)
{
return OBJECT_TO_JSVAL(tmp);
}
return JSVAL_NULL;
}
读spine文件的地方,也没有考虑spine新旧格式适配,需要自己做微调。
我把我用的spine文件也上传了。
0.rar (64 KB)