baldurk / renderdoc

RenderDoc is a stand-alone graphics debugging tool.
https://renderdoc.org
MIT License
8.6k stars 1.3k forks source link

crash when examining capture #3363

Closed zmike closed 1 week ago

zmike commented 1 week ago

Description

While debugging https://gitlab.freedesktop.org/mesa/mesa/-/issues/11354 I encountered a crash with a capture from the trace.

Steps to reproduce

#0  0x0000000000d9fd55 in VulkanPipelineStateViewer::setState() ()
#1  0x0000000000d6b461 in PipelineStateViewer::OnEventChanged(unsigned int) ()
#2  0x0000000000b7464b in CaptureContext::RefreshUIStatus(rdcarray<ICaptureViewer*> const&, bool, bool) ()
#3  0x0000000000b87c25 in CaptureContext::SetEventID(rdcarray<ICaptureViewer*> const&, unsigned int, unsigned int, bool) ()
#4  0x0000000000c77371 in EventBrowser::events_currentChanged(QModelIndex const&, QModelIndex const&) ()
#5  0x00007ffff4ce789e in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#6  0x00007ffff4c6f770 in QItemSelectionModel::currentChanged(QModelIndex const&, QModelIndex const&) () from /lib64/libQt5Core.so.5
#7  0x00007ffff4c71201 in QItemSelectionModel::setCurrentIndex(QModelIndex const&, QFlags<QItemSelectionModel::SelectionFlag>) () from /lib64/libQt5Core.so.5
#8  0x00007ffff5c1eef6 in QAbstractItemView::mousePressEvent(QMouseEvent*) () from /lib64/libQt5Widgets.so.5
#9  0x00007ffff59d0d08 in QWidget::event(QEvent*) () from /lib64/libQt5Widgets.so.5
#10 0x00007ffff5a83d87 in QFrame::event(QEvent*) () from /lib64/libQt5Widgets.so.5
#11 0x00007ffff4cb2f2d in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#12 0x00007ffff598caf5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#13 0x00007ffff59951af in QApplication::notify(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#14 0x00007ffff4cb3168 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#15 0x00007ffff599303d in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) ()
   from /lib64/libQt5Widgets.so.5
#16 0x00007ffff59eb247 in QWidgetWindow::handleMouseEvent(QMouseEvent*) () from /lib64/libQt5Widgets.so.5
#17 0x00007ffff59ee95f in QWidgetWindow::event(QEvent*) () from /lib64/libQt5Widgets.so.5
#18 0x00007ffff598cb05 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#19 0x00007ffff4cb3168 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#20 0x00007ffff515cc37 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /lib64/libQt5Gui.so.5
#21 0x00007ffff513997c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Gui.so.5
#22 0x00007fffd9d18416 in xcbSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib64/libQt5XcbQpa.so.5
#23 0x00007ffff345be8c in g_main_context_dispatch_unlocked.lto_priv () from /lib64/libglib-2.0.so.0
#24 0x00007ffff34bdc98 in g_main_context_iterate_unlocked.isra () from /lib64/libglib-2.0.so.0
#25 0x00007ffff345d383 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#26 0x00007ffff4d070ad in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#27 0x0000000000b5d6d1 in main ()

Environment

baldurk commented 1 week ago

RenderDoc is only intended for capturing your own programs. Capturing programs that are not your own is not endorsed or allowed for any reason, and I will provide absolutely no support for it.