[Qt-interest] Crash in FrameLoaderClientQt
Tony Rietwyk
tony.rietwyk at rightsoft.com.au
Thu Sep 24 10:05:54 CEST 2009
Hi Everybody!
I have a strange problem running my program on Mac 10.5.8 with Qt 4.5.2 on iMac with XCode 3.1.2.
The program displays web pages from the local file system via QWebPage. The pages have <object> tags in them. When the pages are loaded, I attach a QWebPluginFactory derived class, and its plugins method is called. For each object tag, the factory's create method is called, and it creates and returns a widget to be displayed in the HTML.
This works fine on Windows, and I am pretty sure worked on Mac using 4.5.0. Now in 4.5.2, when I run the debug build, and go to load the pages, the program stops between loading the first page and having the factory's plugins override called. The debugger console shows:
Debugger() was called!
The Debugger has exited with status 0.
Then I set a breakpoint, anywhere in my code and run the program again. Now I get a bunch of messages saying that the debugger is loading the program and cannot find the symbols for each of the Qt modules. I go to load the pages, and the program stops again. This time the debugger shows the stack, and clicking Continue, the program works OK - the widgets are displayed in the HTML and I can navigate from page to page. The top of the stack has:
__pthread_kill
pthread_kill
Debugger
dyld_stub_pthread_cond_broadcast
NP_initialize
PluginPackage.load
PluginPackage.fetchInfo
PluginPackage.createPackage
PluginDatabase.refresh
PluginDatabase.installedPlugins
FrameLoaderClientQt.objectContentType
HTMLPluginImageElement.isImageType
HTMLObjectElement.parseMappedAttribute
...
1) In XCode, how do I find out what the exception / signal / whatever is causing the program to stop? I don't see anything like access violation, memory read error or anything like that.
2) How can get the full stack trace into a text file to send to Nokia support?
3) Why does the program stop, but continue OK in debug mode? On Windows in Visual Studio, continuing after an exception just raises the exception again. (I suppose this depends on the what the actual error is.)
4) Webkit appears to be trying to refresh the list of image plugins, but this is failing. The program has already started, and displays both png and svg images OK, so I would have expected Qt's image plugins to already be loaded.
Sorry if this is a known error, but without knowing what the actual error is, its hard to do any searching!
Any other suggestions welcome!
Tony.
More information about the Qt-interest-old
mailing list