Comment #5 on issue 881 by [email protected]: GG crashes FF 3.0.10.0
when uploading image via Wordpress
http://code.google.com/p/gears/issues/detail?id=881
I'm running FF 3.0.5 on XP.
The crash is in newly introduced drag-and-drop related stuff. This code
path executes when simply creating a Gears Factory object. The client page
doesn't have to use the
new drag and drop features to get this crash. That does a lot to explain
the frequency of the crash.
// file dom_utils.cc
nsresult DOMUtils::GetTabNativeWindow(JSContext *js_context,
NativeWindowPtr* window) {
....
nsCOMPtr<nsIBaseWindow> baseWindow(do_QueryInterface(ds, &nr));
if (NS_FAILED(nr)) { return nr; }
nsCOMPtr<nsIWidget> widget;
nr = baseWindow->GetMainWidget(getter_AddRefs(widget));
if (NS_FAILED(nr)) { return nr; }
*window = reinterpret_cast<NativeWindowPtr>(
widget->GetNativeData(NS_NATIVE_WINDOW)); <---- CRASHES HERE
BECAUSE 'widget' IS NULL
return NS_OK;
}
Here's a chunk of the callstack
gears.dll!nsCOMPtr<nsIBaseWindow>::assign_assuming_AddRef(nsIBaseWindow *
newPtr=0x00000001) Line 565 + 0x14 bytes C++
gears.dll!nsCOMPtr<nsIWidget>::operator->() Line 868 + 0x24 bytes
C++
gears.dll!DOMUtils::GetTabNativeWindow(JSContext *
js_context=0x01eb40b0, HWND__ * * window=0x0012f2bc) Line 197 + 0x8
bytes C++
gears.dll!DropTargetInterceptor::Intercept(ModuleEnvironment *
module_environment=0x02a26c00) Line 258 + 0x16 bytes C++
gears.dll!ModuleEnvironment::ModuleEnvironment(SecurityOrigin
security_origin={...}, bool is_worker=false, JsRunnerInterface *
js_runner=0x02a26518,
BrowsingContext * browsing_context=0x00000000) Line 88 + 0x9 bytes C++
gears.dll!ModuleEnvironment::CreateFromDOM() Line 123 + 0x57 bytes
C++
gears.dll!GearsFactory::InitFactoryFromDOM() Line 56 + 0x5 bytes
C++
gears.dll!GearsFactoryConstructor(nsISupports * aOuter=0x00000000, const
nsID & aIID={...}, void * * aResult=0x0012f5f0) Line 239 + 0x83 bytes C++
gears.dll!nsGenericFactory::CreateInstance() + 0x1c bytes C++
--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings