From 85802ea20c7b517140b524ceddc20581d8b652bb Mon Sep 17 00:00:00 2001 From: "chak%netscape.com" Date: Thu, 2 Aug 2001 20:31:54 +0000 Subject: [PATCH] Fix for #92798 - Asserts in nsParser.cpp when registering JS components r=valseki, sr=blizzard git-svn-id: svn://10.0.0.236/trunk@100225 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/embedding/base/nsEmbedAPI.cpp | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/mozilla/embedding/base/nsEmbedAPI.cpp b/mozilla/embedding/base/nsEmbedAPI.cpp index 146e26bd15e..933ac39817f 100644 --- a/mozilla/embedding/base/nsEmbedAPI.cpp +++ b/mozilla/embedding/base/nsEmbedAPI.cpp @@ -95,6 +95,18 @@ nsresult NS_InitEmbedding(nsILocalFile *mozBinDirectory, #endif } + // Create the Event Queue for the UI thread... + // + // If an event queue already exists for the thread, then + // CreateThreadEventQueue(...) will fail... + // CreateThread0ueue(...) will fail... + nsCOMPtr eventQService( + do_GetService(NS_EVENTQUEUESERVICE_CONTRACTID, &rv)); + if (NS_FAILED(rv)) + return rv; + + eventQService->CreateThreadEventQueue(); + // Register components if (!sRegistryInitializedFlag) { @@ -117,20 +129,6 @@ nsresult NS_InitEmbedding(nsILocalFile *mozBinDirectory, return rv; mStartupNotifier->Observe(nsnull, APPSTARTUP_TOPIC, nsnull); - // Create the Event Queue for the UI thread... - // - // If an event queue already exists for the thread, then - // CreateThreadEventQueue(...) will fail... - // CreateThread0ueue(...) will fail... - nsCOMPtr eventQService; - rv = sServiceManager->GetService(NS_EVENTQUEUESERVICE_CONTRACTID, - nsIEventQueueService::GetIID(), - getter_AddRefs(eventQService)); - if (NS_FAILED(rv)) - return rv; - - eventQService->CreateThreadEventQueue(); - #ifdef HACK_AROUND_THREADING_ISSUES // XXX force certain objects to be created on the main thread nsCOMPtr sBundleService;