[webkit-qt] WebCore symbols in Qt WebKit: A cry for help

Robert Hogan lists at roberthogan.net
Wed Apr 14 13:37:51 PDT 2010


Hi there,

For some reason I cannot get proper debug info from WebCore. I get full 
debug info from JavascriptCore and WebKit but not WebCore. In practice this 
means I don't get line numbers in backtraces or when I stop at breakpoints 
within WebCore.

Things I've tried:

-  Removing the lines in WebCore.pro:

CONFIG(QTDIR_build) {
    # Remove the following 2 lines if you want debug information in WebCore
    CONFIG += no_debug_info
    CONFIG -= separate_debug_info
}

- Adding lines such as CONFIG -= no_debug_info

- Adding the WebCore source directory explicitly.

- Building with --debug ( ;-) ) ...

If you look at the bt below you'll see what I mean  - there are line 
numbers for all Qt specific code such as WebKit and WebCoreSupport but 
nothing for WebCore proper.

Does anyone have any ideas on this?

Could someone try putting a breakpoint in WebCore to see if they can 
reproduce it?


(gdb) b JSC::Bindings::RuntimeObject::invalidate()                                                          
Function "JSC::Bindings::RuntimeObject::invalidate()" not defined.                                          
Make breakpoint pending on future shared library load? (y or [n]) y                                         

Breakpoint 1 (JSC::Bindings::RuntimeObject::invalidate()) pending.
(gdb) run -v ~/Development/webkit/LayoutTests/fast/loader/input-element-
page-cache-crash.html 
Starting program: 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/bin/DumpRenderTree 
-v ~/Development/webkit/LayoutTests/fast/loader/input-element-page-cache-
crash.html                                
[Thread debugging using libthread_db enabled]                                                               

Breakpoint 1, 0x00e653d0 in JSC::Bindings::RuntimeObject::invalidate() ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
(gdb) bt                                                                                    
#0  0x00e653d0 in JSC::Bindings::RuntimeObject::invalidate() ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#1  0x00e675a3 in JSC::Bindings::RootObject::invalidate() ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#2  0x00e35877 in WebCore::ScriptController::clearScriptObjects() ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#3  0x011e691e in WebCore::FrameLoader::clear(bool, bool, bool) ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#4  0x011e6fc3 in WebCore::FrameLoader::begin(WebCore::KURL const&, bool, 
WebCore::SecurityOrigin*) ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#5  0x011e6a0e in WebCore::FrameLoader::receivedFirstData() ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#6  0x011ea64a in WebCore::FrameLoader::setEncoding(WebCore::String const&, 
bool) ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#7  0x014fbc1d in WebCore::FrameLoaderClientQt::committedLoad 
(this=0x819c088, loader=0x8205de0,
    data=0x81bde60 "<script>history.back();</script>", length=32)
    at ../../../../WebKit/qt/WebCoreSupport/FrameLoaderClientQt.cpp:735
#8  0x011f3170 in 
WebCore::FrameLoader::committedLoad(WebCore::DocumentLoader*, char const*, 
int) ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#9  0x011d553d in WebCore::DocumentLoader::commitLoad(char const*, int) ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#10 0x011d561c in WebCore::DocumentLoader::receivedData(char const*, int) 
()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#11 0x011ee4c3 in WebCore::FrameLoader::receivedData(char const*, int) ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#12 0x01216544 in WebCore::MainResourceLoader::addData(char const*, int, 
bool) ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#13 0x01223646 in WebCore::ResourceLoader::didReceiveData(char const*, int, 
long long, bool) ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#14 0x01217702 in WebCore::MainResourceLoader::didReceiveData(char const*, 
int, long long, bool) ()
   from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#15 0x0122406c in 
WebCore::ResourceLoader::didReceiveData(WebCore::ResourceHandle*, char 
const*, int, int)
    () from 
/home/robert/Development/webkit/WebKitBuild/invalidaccess/Debug/lib/libQtWebKit.so.4
#16 0x014d0cdb in WebCore::QNetworkReplyHandler::forwardData 
(this=0x81bd0d8)
    at ../../../../WebCore/platform/network/qt/QNetworkReplyHandler.cpp:398
#17 0x014d179c in WebCore::QNetworkReplyHandler::qt_metacall 
(this=0x81bd0d8,
    _c=QMetaObject::InvokeMetaMethod, _id=3, _a=0xbfffe4e0) at 
./moc_QNetworkReplyHandler.cpp:86
#18 0x02d7badb in QMetaObject::metacall (object=0x81e4da0, 
cl=QMetaObject::InvokeMetaMethod, idx=7,
    argv=0xbfffe4e0) at /var/tmp/qt-
src/src/corelib/kernel/qmetaobject.cpp:237
#19 0x02d895a7 in QMetaObject::activate (sender=0x81bc2e8, m=0x2e94208, 
local_signal_index=0,
    argv=0xb7a42b00) at /var/tmp/qt-src/src/corelib/kernel/qobject.cpp:3285
#20 0x02dddd17 in QIODevice::readyRead (this=0x81bc2e8)
    at /var/tmp/qt-src/src/corelib/.moc/release-shared/moc_qiodevice.cpp:91
#21 0x0200c7ce in QNetworkReplyImplPrivate::appendDownstreamData 
(this=0x8209c18, data=...)
    at /var/tmp/qt-src/src/network/access/qnetworkreplyimpl.cpp:465
#22 0x01ff2f87 in QNetworkAccessBackend::writeDownstreamData 
(this=0x8209e60, list=...)
    at /var/tmp/qt-src/src/network/access/qnetworkaccessbackend.cpp:242
#23 0x01ff4b3b in QNetworkAccessDataBackend::open (this=0x8209e60)
    at /var/tmp/qt-src/src/network/access/qnetworkaccessdatabackend.cpp:123
#24 0x0200d306 in QNetworkReplyImplPrivate::_q_startOperation 
(this=0x8209c18)
    at /var/tmp/qt-src/src/network/access/qnetworkreplyimpl.cpp:85


More information about the webkit-qt mailing list