The StopLoadingDocuemnt of nsWebShell is not safe to be called from the nsMetaCharsetObserver. It crash on Mac and Linux when the first block of data contained the full META charset tag. I temp fix this by comment out the call to StopLoadingDocument in the intl/chardet/src/nsMetaCharsetObserber.cpp . if you uncomment out that two line you can easily reproduce problem on Linux and Mac. Not easy to see the problem on window. Related bug 7239, 7241, 7242, 3921, 7240
This bug is happening because on Mac and Unix, netlib callbacks can happen before the load url call stack unwinds. This will get fixed by the Necko landing because all three platforms will start using the same threading architecture. Right now, on Mac and Unix, netlib and layout run on a single thread while on Windows, they are on separate threads. Rick, please correct me if I am goofing up here. Thanks. Setting target milestone to M8 and accepting bug.
Status: NEW → ASSIGNED
Summary: nsIWebShellServices::StopLoadingDocument is not reentr safe → [Necko] nsIWebShellServices::StopLoadingDocument is not reentr safe
Whiteboard: Should be fixed by Necko landing
*** Bug 7208 has been marked as a duplicate of this bug. ***
Moving out Necko related bugs to M9...
Moving bugs blocked by Necko to M10...
Now that Necko has landed, this bug should be fixed. Frank, I'm assigning this to you so that you can see what happens on Mac and Unix when you re-enable your code. Please pass it back to me if you run into problems. Thanks.
Status: ASSIGNED → RESOLVED
Last Resolved: 20 years ago
Resolution: --- → FIXED
check in the remove of the work around. Mark this fixed
Moving all threading bugs to XPCOM. See bug 160356.
Component: Threading → XPCOM
You need to log in before you can comment on or make changes to this bug.