http://bugzilla.novell.com/show_bug.cgi?id=589474
http://bugzilla.novell.com/show_bug.cgi?id=589474#c1 --- Comment #1 from tom hindle <[email protected]> 2010-03-26 03:42:27 UTC --- Created an attachment (id=350713) --> (http://bugzilla.novell.com/attachment.cgi?id=350713) Test case showing seg fault creating and displaying two web browsers sequentially The seconded attached test case shows that is not possible to show a WebBrowser then close it down and then show it again. The believe this is caused by gluezilla semi cleaning it XPCom / xul objects. However I have experimented with also doing a NS_ShutdownXPCOM() (in addition to XPComGlueShutdown in Widget.cpp) but this caused it to break in other areas. Possibly some of the XPCom object are brittle, and can't handle the XPCom init/Shutdown cycle happening multiple times in a single process instance. I also tried disabling the XPCom shutdown and only doing the initialization once and this improved matters meaning I could display the the WebBrowser multiple times, however each additional WebBrowser create got progressively slower until the create hung. The third thing I tried was to create a libgluzilla wrapper which dlopened and dlclosed the real libgluzilla, on each init and shutdown, to ensure XPCom global vars were not persisted. This seem to improve matters but caused issues with the 'NativeEmbedWidget' user defined type (I think it registers it self with some global defined data struct, and doesn't take kindly to being dlcosed and then dl(re)opened) -- Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. You are the assignee for the bug. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
