Bug 41712
Summary: | [Qt] REGRESSION(62551): It make inspector tests crash | ||
---|---|---|---|
Product: | WebKit | Reporter: | Csaba Osztrogonác <ossy> |
Component: | JavaScriptCore | Assignee: | Nobody <webkit-unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | Blocker | CC: | abarth, darin |
Priority: | P1 | ||
Version: | 528+ (Nightly build) | ||
Hardware: | PC | ||
OS: | All | ||
Bug Depends on: | |||
Bug Blocks: | 41320 |
Csaba Osztrogonác
After r62551 and r62554 (buildfix) every second
inspector tests crash with QtWebKit.
I tried to run run-webkit-tests with --singly
option and all inspector tests pass.
Here is a backtrace for a crash if you run the following tests
inspector/audits-panel-functional.html inspector/console-clear.html:
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xf319e6c0 (LWP 14468)]
0x00000000 in ?? ()
(gdb) bt
#0 0x00000000 in ?? ()
#1 0xf672329b in ~QWebPagePrivate (this=0x8196c38) at ../../../WebKit/qt/Api/qwebpage.cpp:315
#2 0xf67235c8 in ~QWebPage (this=0x8194360) at ../../../WebKit/qt/Api/qwebpage.cpp:1894
#3 0xf6725d9e in QWebViewPrivate::detachCurrentPage (this=0x819c800) at ../../../WebKit/qt/Api/qwebview.cpp:372
#4 0xf6726a8f in ~QWebViewPrivate (this=0x819c800) at ../../../WebKit/qt/Api/qwebview.cpp:60
#5 0xf6726b96 in ~QWebView (this=0x8196e30) at ../../../WebKit/qt/Api/qwebview.cpp:329
#6 0xf66fa22d in WTF::deleteOwnedPtr<QWebView> (ptr=0x8196e30) at ../../../JavaScriptCore/wtf/OwnPtrCommon.h:57
#7 0xf66fa493 in ~OwnPtr (this=0x819f110) at ../../../JavaScriptCore/wtf/OwnPtr.h:57
#8 0xf66fa550 in ~InspectorFrontendClientQt (this=0x819f0f8) at ../../../WebKit/qt/WebCoreSupport/InspectorClientQt.h:70
#9 0xf62d44f7 in WTF::deleteOwnedPtr<WebCore::InspectorFrontendClient> (ptr=0x819f0f8) at ../../../JavaScriptCore/wtf/OwnPtrCommon.h:57
#10 0xf62dee6b in ~OwnPtr (this=0x8192b04) at ../../../JavaScriptCore/wtf/OwnPtr.h:57
#11 0xf62fe98c in ~InspectorController (this=0x8192af8) at ../../../WebCore/inspector/InspectorController.cpp:228
#12 0xf6447506 in WTF::deleteOwnedPtr<WebCore::InspectorController> (ptr=0x8192af8) at ../../../JavaScriptCore/wtf/OwnPtrCommon.h:57
#13 0xf6449403 in ~OwnPtr (this=0x8189be0) at ../../../JavaScriptCore/wtf/OwnPtr.h:57
#14 0xf6450734 in ~Page (this=0x8189bc8) at ../../../WebCore/page/Page.cpp:227
#15 0xf67232da in ~QWebPagePrivate (this=0x8196c38) at ../../../WebKit/qt/Api/qwebpage.cpp:318
#16 0xf6723834 in ~QWebPage (this=0x8194360) at ../../../WebKit/qt/Api/qwebpage.cpp:1894
#17 0xf66fa7bd in ~InspectorClientWebPage (this=0x8194360) at ../../../WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:56
#18 0xf6725d9e in QWebViewPrivate::detachCurrentPage (this=0x819c800) at ../../../WebKit/qt/Api/qwebview.cpp:372
#19 0xf6726a8f in ~QWebViewPrivate (this=0x819c800) at ../../../WebKit/qt/Api/qwebview.cpp:60
#20 0xf6726b96 in ~QWebView (this=0x8196e30) at ../../../WebKit/qt/Api/qwebview.cpp:329
#21 0xf66fa22d in WTF::deleteOwnedPtr<QWebView> (ptr=0x8196e30) at ../../../JavaScriptCore/wtf/OwnPtrCommon.h:57
#22 0xf66fa24f in WTF::OwnPtr<QWebView>::clear (this=0x819f110) at ../../../JavaScriptCore/wtf/OwnPtr.h:61
#23 0xf66fb27f in WebCore::InspectorFrontendClientQt::closeWindow (this=0x819f0f8) at ../../../WebKit/qt/WebCoreSupport/InspectorClientQt.cpp:263
#24 0xf632d276 in WebCore::InspectorFrontendHost::closeWindow (this=0x8249848) at ../../../WebCore/inspector/InspectorFrontendHost.cpp:166
#25 0xf5c47914 in WebCore::jsInspectorFrontendHostPrototypeFunctionCloseWindow (exec=0xf118a320) at generated/JSInspectorFrontendHost.cpp:205
#26 0xf0f48fcf in ?? ()
#27 0x00000200 in ?? ()
#28 0xf118a320 in ?? ()
#29 0xffffa098 in ?? ()
#30 0xf0d4c295 in ?? ()
#31 0x0855b524 in ?? ()
#32 0xf1102b40 in ?? ()
#33 0xfffffffe in ?? ()
#34 0x0882ddf8 in ?? ()
#35 0x0855b524 in ?? ()
#36 0x00000000 in ?? ()
Attachments | ||
---|---|---|
Add attachment proposed patch, testcase, etc. |
Darin Adler
http://trac.webkit.org/changeset/62587 is my attempt at a fix for this.
A better fix would be to fix OwnPtr::clear.