Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash after launching sc with floating Doc panel #1139

Closed
scztt opened this issue Jun 22, 2014 · 5 comments
Closed

Crash after launching sc with floating Doc panel #1139

scztt opened this issue Jun 22, 2014 · 5 comments
Labels
bug Issues that relate to unexpected/unwanted behavior. Don't use for PRs. os: macOS qt5

Comments

@scztt
Copy link
Contributor

scztt commented Jun 22, 2014

  1. Undock Documentation window
  2. Close and re-launch IDE
  3. Re-dock Documentation window
  4. Undock again.

Result: crash on mouse down when you try 4. This seems similar to James' #1138 problems.

@scztt scztt added bug labels Jun 22, 2014
@scztt
Copy link
Contributor Author

scztt commented Jun 22, 2014

Process: SuperCollider [76508]
Path: /Users/USER/Documents/*/SuperCollider.app/Contents/MacOS/SuperCollider
Identifier: net.sourceforge.supercollider
Version: 3.7 (alpha0)
Code Type: X86-64 (Native)
Parent Process: launchd [258]
Responsible: SuperCollider [76508]
User ID: 501

Date/Time: 2014-06-21 17:00:39.251 -0700
OS Version: Mac OS X 10.9.3 (13D65)
Report Version: 11
Anonymous UUID: CCB6D221-51F6-E0E5-2D3E-95353A3FE9C2

Sleep/Wake UUID: EA87701F-D030-42B8-95E1-1B95B1F4BDFE

Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: EXC_I386_GPFLT

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 QtCore 0x00000001063d6463 QObject::disconnect(QObject const_, char const_, QObject const_, char const_) + 643
1 QtWebKitWidgets 0x00000001093f57b2 QWebPagePrivate::updateWindow() + 146
2 QtWebKitWidgets 0x00000001093f3ed4 QWebPage::setViewportSize(QSize const&) const + 36
3 QtWidgets 0x00000001094a64f7 QWidget::event(QEvent_) + 2023
4 QtWebKitWidgets 0x00000001093fa413 QWebView::event(QEvent_) + 83
5 QtWidgets 0x000000010946b7bc QApplicationPrivate::notify_helper(QObject_, QEvent_) + 252
6 QtWidgets 0x000000010946eb9a QApplication::notify(QObject_, QEvent_) + 8490
7 QtCore 0x00000001063a78b3 QCoreApplication::notifyInternal(QObject_, QEvent_) + 115
8 QtWidgets 0x00000001094a01c0 QWidgetPrivate::sendPendingMoveAndResizeEvents(bool, bool) + 336
9 QtWidgets 0x00000001094a4d5a QWidgetPrivate::show_helper() + 42
10 QtWidgets 0x00000001094a50f7 QWidgetPrivate::showChildren(bool) + 327
11 QtWidgets 0x00000001094a4d79 QWidgetPrivate::show_helper() + 73
12 QtWidgets 0x00000001094a50f7 QWidgetPrivate::showChildren(bool) + 327
13 QtWidgets 0x00000001094a4d79 QWidgetPrivate::show_helper() + 73
14 QtWidgets 0x00000001094a5af0 QWidget::setVisible(bool) + 1328
15 QtWidgets 0x000000010957a228 QDockWidgetPrivate::setWindowState(bool, bool, QRect const&) + 344
16 QtWidgets 0x000000010957a0c3 QDockWidgetPrivate::unplug(QRect const&) + 195
17 QtWidgets 0x00000001095a9bbb QMainWindowLayout::unplug(QWidget_) + 219
18 QtWidgets 0x0000000109579206 QDockWidgetPrivate::startDrag() + 86
19 QtWidgets 0x00000001095799f4 QDockWidgetPrivate::mouseMoveEvent(QMouseEvent_) + 372
20 QtWidgets 0x000000010957b050 QDockWidget::event(QEvent_) + 496
21 QtWidgets 0x000000010946b7bc QApplicationPrivate::notify_helper(QObject_, QEvent_) + 252
22 QtWidgets 0x000000010946eefd QApplication::notify(QObject_, QEvent_) + 9357
23 QtCore 0x00000001063a78b3 QCoreApplication::notifyInternal(QObject_, QEvent_) + 115
24 QtWidgets 0x000000010946c068 QApplicationPrivate::sendMouseEvent(QWidget_, QMouseEvent_, QWidget_, QWidget_, QWidget__, QPointer&, bool) + 904
25 QtWidgets 0x00000001094c465c QWidgetWindow::handleMouseEvent(QMouseEvent_) + 1196
26 QtWidgets 0x00000001094c38c2 QWidgetWindow::event(QEvent_) + 114
27 QtWidgets 0x000000010946b7bc QApplicationPrivate::notify_helper(QObject_, QEvent_) + 252
28 QtWidgets 0x000000010946ce8a QApplication::notify(QObject_, QEvent_) + 1050
29 QtCore 0x00000001063a78b3 QCoreApplication::notifyInternal(QObject_, QEvent_) + 115
30 QtGui 0x0000000106914cb7 QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent_) + 2151
31 QtGui 0x0000000106913b86 QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent_) + 118
32 QtGui 0x00000001069022fa QWindowSystemInterface::sendWindowSystemEvents(QFlagsQEventLoop::ProcessEventsFlag) + 346
33 libqcocoa.dylib 0x000000010be50a91 QCocoaEventDispatcherPrivate::postedEventsSourceCallback(void_) + 33
34 com.apple.CoreFoundation 0x00007fff90db4661 CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 17
35 com.apple.CoreFoundation 0x00007fff90da5d12 __CFRunLoopDoSources0 + 242
36 com.apple.CoreFoundation 0x00007fff90da549f __CFRunLoopRun + 831
37 com.apple.CoreFoundation 0x00007fff90da4f25 CFRunLoopRunSpecific + 309
38 com.apple.HIToolbox 0x00007fff8cba5a0d RunCurrentEventLoopInMode + 226
39 com.apple.HIToolbox 0x00007fff8cba5685 ReceiveNextEventCommon + 173
40 com.apple.HIToolbox 0x00007fff8cba55bc _BlockUntilNextEventMatchingListInModeWithFilter + 65
41 com.apple.AppKit 0x00007fff959d426e _DPSNextEvent + 1434
42 com.apple.AppKit 0x00007fff959d38bb -[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122
43 com.apple.AppKit 0x00007fff959c79bc -[NSApplication run] + 553
44 libqcocoa.dylib 0x000000010be4f925 QCocoaEventDispatcher::processEvents(QFlagsQEventLoop::ProcessEventsFlag) + 2149
45 QtCore 0x00000001063a4f9d QEventLoop::exec(QFlagsQEventLoop::ProcessEventsFlag) + 381
46 QtCore 0x00000001063a7e9c QCoreApplication::exec() + 364
47 net.sourceforge.supercollider 0x0000000105dcda89 main + 3097 (main.cpp:125)
48 libdyld.dylib 0x00007fff9060c5fd start + 1

@scztt
Copy link
Contributor Author

scztt commented Jun 22, 2014

I can prevent the crash by wrapping some naked pointers to currentContainer in QPointer. Somewhere in the dock / undock process a window is being destroyed while there are still refs outstanding, as suggested by:
https://bugreports.qt-project.org/browse/QTBUG-39524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel

However, that fix still leaves a dead os window hanging around, in addition to the active doc window docked where it should be. That's probably the thing that James was seeing in his bug.

@scztt
Copy link
Contributor Author

scztt commented Jun 22, 2014

@scztt
Copy link
Contributor Author

scztt commented Jun 22, 2014

The temp solution to this is going to have to be destroying the webview and then recreating it when docking / undocking. Ick.

@scztt
Copy link
Contributor Author

scztt commented Nov 5, 2014

Fixed for qt >= 5.3.2

@scztt scztt closed this as completed Nov 5, 2014
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Issues that relate to unexpected/unwanted behavior. Don't use for PRs. os: macOS qt5
Projects
None yet
Development

No branches or pull requests

1 participant