I'm having a really strange problem and am wondering if anyone out there knows how to solve it.
I'm embedding Mozilla in a Java program. I'm creating a new native thread, inside which I call NS_InitEmbedding, etc., and then enter a native event loop. From another thread in Java, I'm calling into my native code to create an embedded WebBrowser instance. In order to make sure that it gets created on the main XPCOM UI thread and eliminate threading issues in subsequent calls, I'm using the nsIProxyObjectManager's GetProxy method to defer creation onto the main XPCOM thread. Here's the code I'm using: proxy_service = do_GetService(NS_XPCOMPROXY_CONTRACTID, &rv); if (NS_FAILED(proxy_service->GetProxy(NS_UI_THREAD_EVENTQ, kWebBrowserCID, nsnull, NS_GET_IID(nsIWebBrowser), PROXY_SYNC | PROXY_ALWAYS, (void **)&web_browser))) return false; After this I use GetProxyForObject to get nsIWebNavigation, nsIBaseWindow, etc. Everything works 75% of the time without any problems whatsoever. However, sometimes (it appears to be somewhat random), my thread will hang on the call to GetProxy, which never returns. I'm not really sure what could be causing this to happen, and like I said, things work great most of the time. I'm working with a release build that I made from the 1.3.1 source code. I'm hoping that someone might have some ideas or be able to point me in the right direction, otherwise I'm going to plan on making a debug build and see if I'm my code is triggering some asserts that I may be missing in the release build. Thanks in advance. -- Brad Fish [EMAIL PROTECTED] TALL Group Programmer
