https://bugs.kde.org/show_bug.cgi?id=428160
Bug ID: 428160 Summary: Crash in libksysguard process reading in TM update Product: plasmashell Version: master Platform: Other OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: Task Manager and Icons-Only Task Manager Assignee: h...@kde.org Reporter: k...@davidedmundson.co.uk CC: plasma-b...@kde.org Target Milestone: 1.0 ==17716== Invalid read of size 1 ==17716== at 0x858CE66: void doActivate<false>(QObject*, int, void**) (qobject.cpp:3770) ==17716== by 0x858698A: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3946) ==17716== by 0x121AC166: KSysGuard::AbstractProcesses::processUpdated(long, QVector<QPair<KSysGuard::Process::Change, QVariant> > const&) (moc_processes_base_p.cpp:164) ==17716== by 0x121DE009: KSysGuard::ProcessesLocal::updateProcessInfo(long, KSysGuard::Process*)::$_2::operator()() const (src/kde/workspace/libksysguard/processcore/processes_linux_p.cpp:559) ==17716== by 0x121DDF35: QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, KSysGuard::ProcessesLocal::updateProcessInfo(long, KSysGuard::Process*)::$_2>::call(KSysGuard::ProcessesLocal::updateProcessInfo(long, KSysGuard::Process*)::$_2&, void**) (qobjectdefs_impl.h:146) ==17716== by 0x121DDF00: void QtPrivate::Functor<KSysGuard::ProcessesLocal::updateProcessInfo(long, KSysGuard::Process*)::$_2, 0>::call<QtPrivate::List<>, void>(KSysGuard::ProcessesLocal::updateProcessInfo(long, KSysGuard::Process*)::$_2&, void*, void**) (qobjectdefs_impl.h:256) ==17716== by 0x121DDEAB: QtPrivate::QFunctorSlotObject<KSysGuard::ProcessesLocal::updateProcessInfo(long, KSysGuard::Process*)::$_2, 0, QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (qobjectdefs_impl.h:443) ==17716== by 0x854A180: QtPrivate::QSlotObjectBase::call(QObject*, void**) (qobjectdefs_impl.h:398) ==17716== by 0x858D429: void doActivate<false>(QObject*, int, void**) (qobject.cpp:3886) ==17716== by 0x858698A: QMetaObject::activate(QObject*, QMetaObject const*, int, void**) (qobject.cpp:3946) ==17716== by 0x121AC7E4: KSysGuard::ReadProcSmapsRunnable::finished() (moc_read_procsmaps_runnable.cpp:134) ==17716== by 0x121F3990: KSysGuard::ReadProcSmapsRunnable::run() (src/kde/workspace/libksysguard/processcore/read_procsmaps_runnable.cpp:37) ==17716== Address 0x1b4139f0 is 32 bytes inside a block of size 88 free'd ==17716== at 0x483C08B: operator delete(void*, unsigned long) (vg_replace_malloc.c:593) ==17716== by 0x857D70A: QObjectPrivate::~QObjectPrivate() (qobject.cpp:237) ==17716== by 0x858E3C2: QScopedPointerDeleter<QObjectData>::cleanup(QObjectData*) (qscopedpointer.h:60) ==17716== by 0x858AFE6: QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> >::~QScopedPointer() (qscopedpointer.h:107) ==17716== by 0x857F57C: QObject::~QObject() (qobject.cpp:972) ==17716== by 0x121ACC97: KSysGuard::AbstractProcesses::~AbstractProcesses() (src/kde/workspace/libksysguard/processcore/processes_base_p.h:48) ==17716== by 0x121DDD36: KSysGuard::ProcessesLocal::~ProcessesLocal() (src/kde/workspace/libksysguard/processcore/processes_linux_p.cpp:764) ==17716== by 0x121DDD5B: KSysGuard::ProcessesLocal::~ProcessesLocal() (src/kde/workspace/libksysguard/processcore/processes_linux_p.cpp:762) ==17716== by 0x121D254C: KSysGuard::Processes::Private::~Private() (src/kde/workspace/libksysguard/processcore/processes.cpp:89) ==17716== by 0x121D2C8E: KSysGuard::Processes::~Processes() (src/kde/workspace/libksysguard/processcore/processes.cpp:110) ==17716== by 0x1D281E9C: Backend::parentPid(long long) const (src/kde/workspace/plasma-desktop/applets/taskmanager/plugin/backend.cpp:545) The fact that we parse all of smaps just to get a parent PID is also somewhat insane. -- You are receiving this mail because: You are watching all bug changes.