[frameworks-solid] [Bug 464149] Q_ASSERT(dev->backendObject() != nullptr);

Christoph Cullmann bugzilla_noreply at kde.org
Sat Oct 19 11:29:58 BST 2024


https://bugs.kde.org/show_bug.cgi?id=464149

--- Comment #5 from Christoph Cullmann <christoph at cullmann.io> ---
Git commit 99510948944ecda04f9cec6b3bd94b140d191a1c by Christoph Cullmann, on
behalf of Nicolas Fella.
Committed on 19/10/2024 at 10:27.
Pushed by cullmann into branch 'master'.

[udisks] Don't add/remove devices in slotMediaChanged

We get notified when devices are added via
InterfacesAdded/InterfacesRemoved.

When ejecting from a CD drive we first get slotMediaChanged, where we
remove the device from m_deviceCache. Then we get InterfacesRemoved
for org.freedesktop.UDisks2.Filesystem. Because the
org.freedesktop.UDisks2.Block interface is still there we remove and
immediately readd the device. Then in DeviceManagerPrivate::_k_deviceAdded
we call createBackendObject, which fails to create a backend because
the uid is not in m_deviceCache any more. Then we assert because the
backend is empty.

SENTRY: KIO-6S

SENTRY: KONTACT-FM

SENTRY: KDED-P

SENTRY: PLASMA-WORKSPACE-SMH

SENTRY: ARK-5T

SENTRY: DOLPHIN-218

M  +0    -13   src/solid/devices/backends/udisks2/udisksmanager.cpp

https://invent.kde.org/frameworks/solid/-/commit/99510948944ecda04f9cec6b3bd94b140d191a1c

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the Unassigned-bugs mailing list