[Phonon] [Bug 435008] New: Call to pure virtual MediaObjectPrivate::aboutToDeleteBackendObject() [crash]
phd
bugzilla_noreply at kde.org
Sat Mar 27 10:09:28 GMT 2021
https://bugs.kde.org/show_bug.cgi?id=435008
Bug ID: 435008
Summary: Call to pure virtual
MediaObjectPrivate::aboutToDeleteBackendObject()
[crash]
Product: Phonon
Version: 4.11.1
Platform: Ubuntu Packages
OS: Linux
Status: REPORTED
Severity: normal
Priority: NOR
Component: general
Assignee: unassigned-bugs at kde.org
Reporter: phd at phd.re
CC: myriam at kde.org, romain.perier at gmail.com,
sitter at kde.org
Target Milestone: ---
This happens very rarely.
Probable scenario:
At Plasma startup `pulseaudio -k` executed in the wrong moment.
Since all MediaNode/MediaNodePrivate derived classes [1]
seem to implement aboutToDeleteBackendObject() properly,
maybe that virtual function is called before the derived class
is constructed or after it is destroyed, which would be UB?
Although the (only) call in FactoryPrivate::~FactoryPrivate()
seems to operate on already well constructed MediaNodes.
I'm not sure if this is the right thing to do, but to workaround this crash,
maybe we could simply implement MediaNode::aboutToDeleteBackendObject()
to make it non-pure virtual?
Does it have a potential to hide any serious issues in the future?
Application: plasma_session (plasma_session), signal: Aborted
[KCrash Handler]
#4 __GI_raise (sig=sig at entry=6) at ../sysdeps/unix/sysv/linux/raise.c:49
#5 0x00007fba07614864 in __GI_abort () at abort.c:79
#6 0x00007fba07870951 in __gnu_cxx::__verbose_terminate_handler() () at
../../../../src/libstdc++-v3/libsupc++/vterminate.cc:95
#7 0x00007fba0787c47c in __cxxabiv1::__terminate(void (*)())
(handler=<optimized out>) at
../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:48
#8 0x00007fba0787c4e7 in std::terminate() () at
../../../../src/libstdc++-v3/libsupc++/eh_terminate.cc:58
#9 0x00007fba0787d245 in __cxxabiv1::__cxa_pure_virtual() () at
../../../../src/libstdc++-v3/libsupc++/pure.cc:50
#10 0x00007fba07f3acd5 in Phonon::MediaNodePrivate::deleteBackendObject()
(this=0x7fb9f401a8a0) at ./phonon/medianode.cpp:78
#11 0x00007fba07f1d7b1 in Phonon::FactoryPrivate::~FactoryPrivate()
(this=0x7fb9f40239f0, __in_chrg=<optimized out>) at
/usr/include/x86_64-linux-gnu/qt5/QtCore/qlist.h:543
#12 0x00007fba07f1da5d in Phonon::FactoryPrivate::~FactoryPrivate()
(this=0x7fb9f40239f0, __in_chrg=<optimized out>) at ./phonon/factory.cpp:185
#13 0x00007fba07c601c2 in qt_call_post_routines() () at
kernel/qcoreapplication.cpp:353
#14 0x00007fba07c60330 in QCoreApplication::~QCoreApplication()
(this=0x7ffef5373410, __in_chrg=<optimized out>) at
kernel/qcoreapplication.cpp:879
#15 0x000055a3cf9a7b99 in ()
#16 0x00007fba07616ca2 in __libc_start_main (main=0x55a3cf9a7b40, argc=1,
argv=0x7ffef5373528, init=<optimized out>, fini=<optimized out>,
rtld_fini=<optimized out>, stack_end=0x7ffef5373518) at ../csu/libc-start.c:314
#17 0x000055a3cf9a7bee in _start ()
[Inferior 1 (process 5744) detached]
System: Kubuntu 20.10
KDE Plasma Version: 5.19.5
KDE Frameworks Version: 5.74.0
Qt Version: 5.14.2
[1] https://invent.kde.org/libraries/phonon/-/tree/master/phonon
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the Unassigned-bugs
mailing list