Hi all,
We have developed a multi-platform software to show videogame-like 3D interactive virtual tours, and we are currently trying to embed berkelium as the underlying html renderer. At the moment we got the whole platform succesfully working on Windows and MacOS as a stand-alone application; and as a browser plugin for Internet Explorer (ActiveX), Google Chrome, Opera, Safari and Firefox (as a nescape-like NPAPI plugin). But we are having some serious problems with the latest; while the same browser plugin code works just fine on Chrome, Opera and Safari, it always crashes on Firefox.
We tried to isolate the problem with simple example where we are able to reproduce it, and so we have built a minimal firefox plugin that just embeds berkelium showing a website. Here we got two different behaviours:
- With Berkelium 8.0.552.23 for Windows (VC8 build) the demo works fine... until we start to resize the browser intensively. Then, the plugin crashes. Actually, the plugin doesn't receive the WM_SIZE message, and it keeps always the same size. We commented the code on the berkelium paint and window paint so it does nothing and it keeps with the same behavior (crashing). This resize-crash behaviours is the same in all browsers.
- With Berkelium 11.0.696.57 for Windows, the demo crashes during initialization (within the call to Berkelium::init(Berkelium::FileString::empty()) ) on Mozilla Firefox. In the other browsers it works just the same as with the previous version (crashing on resize).
The Firefox crash dump file gives always the same message, "subprocess tried to write or read from a virtual address without permissions...". All the crashes seems to be related with the berkelium::init or berkelium::update.
Could somebody shed some light on the matter? I’m linking our Visual Studio 2010 Solution for our minimal sample (everything configured for the build to work). Just remember to add in the plugin mime-type in the system registry (I’m also linking a simple .reg file that must be edited to set the appropiate .dll; If you are running a 64 bit machine, the registry entry should be changed to point to the WOW node).
Visual 2010 Solution: http://www.azulindigo.com/ruibal/berkelium_firefox_test/npBerkelium.7z
Reg file: http://www.azulindigo.com/ruibal/berkelium_firefox_test/virtwayFirefoxReg.reg
Looking forward to read some advices from you!
Thanks in advance,