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.

Reply via email to