Firefox addon jsctypes终结器跨域问题

Firefox addon jsctypes终结器跨域问题,firefox-addon,cross-domain,jsctypes,Firefox Addon,Cross Domain,Jsctypes,我过去成功地使用过jsctypes,但最新版本的firefox(32)开始给我一条奇怪的错误消息 这是过去的工作- javascript内容向chrome中的javascript扩展发送一条消息(该扩展使用ctypes调用一个特殊的设备分配器,然后向内容返回一个cdata.finalizer) 稍后,当内容被垃圾收集时,finalizer将被调用以释放特殊的设备分配 虽然这过去工作正常,但现在我得到了一个异常ctypes.CDataFinalizer 不允许将跨原点对象定义为[object]或[

我过去成功地使用过jsctypes,但最新版本的firefox(32)开始给我一条奇怪的错误消息

这是过去的工作-

javascript内容向chrome中的javascript扩展发送一条消息(该扩展使用ctypes调用一个特殊的设备分配器,然后向内容返回一个cdata.finalizer) 稍后,当内容被垃圾收集时,finalizer将被调用以释放特殊的设备分配

虽然这过去工作正常,但现在我得到了一个异常ctypes.CDataFinalizer 不允许将跨原点对象定义为[object]或[Array]X射线包装器上的属性

在谷歌上搜索似乎找不到任何相关信息

在扩展上我有这段代码(func…things是c代码的访问方法)

有什么建议吗

self.addEventListener("allocArray", function (event) {
     var info = event.detail.info;
     try {
         var cBytes = ctypes.int32_t(info.bytes);
         var cArrayId = ctypes.uint32_t(0);
         var err = funcAllocArray(cBytes,  cArrayId.address());
         if(err !== 0) {
              info.rtnCode = err;
              info.arrayId = -1;
              info.error = "Error: " + (err === 2)? "out of memory": "allocation failed";
          } else {
               info.rtnCode = 0;
               info.arrayId = ctypes.CDataFinalizer(cArrayId.value, funcReleaseArray);
          }
     }
     catch(exception) {
         info.rtnCode = -1;
         info.arrayId = -1;
         info.error = report(exception);
      }
  }, true, true);

如果你想关注你的jsctypes主题,你必须给它一个firefox插件标签,否则没有人会看到它。你找到这个了吗?你在这方面取得了任何进展:)我确实找到了,我必须添加event=XPCNati eWrapper.unwrap(event)在Firefox30的代码中,内容对象在插入chrome扩展时会被包装,我们无法将本地对象和CDATA终结器存储到对象中,这非常有趣。你说的chrome扩展是什么意思?你是说firefox专用代码?还是谷歌浏览器?