https://bugs.kde.org/show_bug.cgi?id=467622
Bug ID: 467622 Summary: screensharing crashes portal Classification: Plasma Product: xdg-desktop-portal-kde Version: 5.27.3 Platform: Fedora RPMs OS: Linux Status: REPORTED Keywords: drkonqi Severity: crash Priority: NOR Component: general Assignee: plasma-b...@kde.org Reporter: kor...@gmail.com CC: aleix...@kde.org, jgrul...@redhat.com, n...@kde.org Target Milestone: --- Application: xdg-desktop-portal-kde (5.27.3) Qt Version: 5.15.8 Frameworks Version: 5.104.0 Operating System: Linux 6.2.7-300.fc38.x86_64 x86_64 Windowing System: Wayland Distribution: Fedora Linux 38 (Thirty Eight Prerelease) DrKonqi: 5.27.3 [KCrashBackend] -- Information about the crash: Choosing "new virtual output" on portal screensharing, stopping shareing and sharing again shows incorrect number of output monitors, selecting one without a name crashes obs logs: info: [pipewire] Stream 0x556a2ebc47c0 state: "unconnected" (error: none) info: PipeWire initialized info: [pipewire] Screencast session created info: [pipewire] Asking for desktop warning: [pipewire] Failed to start screencast, denied or cancelled by user xdg-desktop-portal-kde logs: QT_LOGGING_RULES='*.debug=true' /usr/libexec/xdg-desktop-portal-kde -rv kf.wayland.client: Unknown interface announced: kde_output_device_v2 / 63 / 2 kf.wayland.client: Wayland Interface: wl_output / 64 / 4 qt.qpa.wayland: Received xdg_toplevel.configure with QSize(1870, 1051) and QFlags<Qt::WindowState>(WindowMaximized) qt.qpa.wayland: Applied pending xdg_toplevel configure event: QSize(1870, 1051) QFlags<Qt::WindowState>(WindowMaximized) qt.scenegraph.renderloop: exposureChanged() ApplicationWindow_QMLTYPE_49_QML_78(0x55596cdd9ab0 exposed, visibility=QWindow::Maximized, flags=QFlags<Qt::WindowType>(Window), title="Portal", geometry=0,0 1870x1051) qt.scenegraph.renderloop: handleExposure() ApplicationWindow_QMLTYPE_49_QML_78(0x55596cdd9ab0 exposed, visibility=QWindow::Maximized, flags=QFlags<Qt::WindowType>(Window), title="Portal", geometry=0,0 1870x1051) qt.scenegraph.renderloop: - render thread already running qt.scenegraph.renderloop: polishAndSync (in expose) ApplicationWindow_QMLTYPE_49_QML_78(0x55596cdd9ab0 exposed, visibility=QWindow::Maximized, flags=QFlags<Qt::WindowType>(Window), title="Portal", geometry=0,0 1870x1051) qt.scenegraph.renderloop: - lock for sync qt.scenegraph.renderloop: - wait for sync qt.scenegraph.renderloop: (RT) WM_RequestSync qt.scenegraph.renderloop: (RT) - triggered from expose qt.scenegraph.renderloop: (RT) --- done processEventsAndWaitForMore() qt.scenegraph.renderloop: (RT) syncAndRender() qt.scenegraph.renderloop: (RT) - updatePending, doing sync qt.scenegraph.renderloop: (RT) sync() qt.quick.dirty: QQuickWindowPrivate::updateDirtyNodes(): qt.scenegraph.renderloop: (RT) - rendering started qt.scenegraph.time.renderer: time in renderer: total=0ms, preprocess=0, updates=0, binding=0, rendering=0 qt.qpa.wayland.backingstore: handleUpdate QSGRenderThread(0x55596d1fa180) qt.scenegraph.renderloop: (RT) - rendering done qt.scenegraph.renderloop: (RT) - wake Gui after expose qt.scenegraph.renderloop: - unlock after sync qt.scenegraph.time.renderloop: Frame prepared with 'threaded' renderloop, polish=0, lock=0, blockedForSync=8, animations=0 - (on Gui thread) ApplicationWindow_QMLTYPE_49_QML_78(0x55596cdd9ab0 exposed, visibility=QWindow::Maximized, flags=QFlags<Qt::WindowType>(Window), title="Portal", geometry=0,0 1870x1051) qt.scenegraph.renderloop: - done with handleExposure() qt.scenegraph.time.renderloop: Frame rendered with 'threaded' renderloop in 8ms, sync=0, render=0, swap=8 - (on render thread) qt.scenegraph.renderloop: (RT) --- begin processEvents() qt.scenegraph.renderloop: (RT) --- done processEvents() qt.scenegraph.renderloop: (RT) done drawing, sleep... qt.scenegraph.renderloop: (RT) --- begin processEventsAndWaitForMore() xdg-desktop-portal (/usr/libexec/xdg-desktop-portal:8780): xdg-desktop-portal-WARNING **: 20:48:36.142: A backend call failed: Remote peer disconnected XDP: screen cast session owned by ':1.352' closed i have not been able to do a screenshare not even once on wayland. x11 works just fine. the hover on taskbar tasks do not show the content either. i think they are using the same mechanism to get the image for the application state. on xdg-desktop-portal launch: (/usr/libexec/xdg-desktop-portal:8780): xdg-desktop-portal-WARNING **: 20:28:51.368: Failed to create background monitor: Failed to own background monitor D-Bus name (/usr/libexec/xdg-desktop-portal:8780): xdg-desktop-portal-WARNING **: 20:28:51.368: No skeleton to export The crash can be reproduced every time. -- Backtrace: Application: Portal (xdg-desktop-portal-kde), signal: Segmentation fault [KCrash Handler] #4 0x00007faef24baa74 in KWayland::Client::Output::globalPosition() const () from /lib64/libKF5WaylandClient.so.5 #5 0x000056394ed6c77c in WaylandIntegration::WaylandIntegrationPrivate::startStreamingOutput(unsigned int, Screencasting::CursorMode) () #6 0x000056394ed5ba99 in ScreenCastPortal::Start(QDBusObjectPath const&, QDBusObjectPath const&, QString const&, QString const&, QMap<QString, QVariant> const&, QMap<QString, QVariant>&) () #7 0x000056394ed34c30 in ScreenCastPortal::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () #8 0x000056394ed395f2 in ScreenCastPortal::qt_metacall(QMetaObject::Call, int, void**) () #9 0x00007faef10d944b in QDBusConnectionPrivate::deliverCall(QObject*, int, QDBusMessage const&, QVector<int> const&, int) () from /lib64/libQt5DBus.so.5 #10 0x00007faef10dd42d in QDBusConnectionPrivate::activateCall(QObject*, int, QDBusMessage const&) [clone .part.0] () from /lib64/libQt5DBus.so.5 #11 0x00007faef10ddc39 in QDBusConnectionPrivate::activateObject(QDBusConnectionPrivate::ObjectTreeNode&, QDBusMessage const&, int) () from /lib64/libQt5DBus.so.5 #12 0x00007faef10dff24 in QDBusActivateObjectEvent::placeMetaCall(QObject*) () from /lib64/libQt5DBus.so.5 #13 0x00007faef00def9b in QObject::event(QEvent*) () from /lib64/libQt5Core.so.5 #14 0x00007faef19aeca5 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5 #15 0x00007faef00b35a8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5 #16 0x00007faef00b6a55 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /lib64/libQt5Core.so.5 #17 0x00007faef010669f in postEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib64/libQt5Core.so.5 #18 0x00007faeee513788 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0 #19 0x00007faeee571dd8 in g_main_context_iterate.isra () from /lib64/libglib-2.0.so.0 #20 0x00007faeee511113 in g_main_context_iteration () from /lib64/libglib-2.0.so.0 #21 0x00007faef0106189 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5 #22 0x00007faef00b1f7b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5 #23 0x00007faef00ba1fb in QCoreApplication::exec() () from /lib64/libQt5Core.so.5 #24 0x000056394ed3015a in main () [Inferior 1 (process 8751) detached] The reporter indicates this bug may be a duplicate of or related to bug 448781. Reported using DrKonqi -- You are receiving this mail because: You are watching all bug changes.