[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-panel-devel
Subject: [Panel-devel] [PATCH] Don't leak timers in taskbar
From: "Maksim Orlovich" <mo85 () cornell ! edu>
Date: 2007-12-31 21:08:18
Message-ID: 1829.74.39.37.145.1199135298.squirrel () webmail ! cornell ! edu
[Download RAW message or body]
Hi... The plasma taskbar currently (as of the revision I have on my
laptop, anyway) seems to leak some timers, which shows up in CPU use
eventually climbing. The attached should fix at least one cause of that:
startTimer w/o killTimer. If you look at QObject::startTimer docs, it's
not single-shot, so single-shot use needs an explicit kill.
Anyway, if this is OK, it'd be good if someone committed...
I don't have good net access at the moment, so I might not be able to
-Maks
["plasma_timers.diff" (application/octet-stream)]
diff --git a/workspace/plasma/applets/tasks/abstracttaskitem.cpp \
b/workspace/plasma/applets/tasks/abstracttaskitem.cpp index 3b61e75..c2fd91f 100644
--- a/workspace/plasma/applets/tasks/abstracttaskitem.cpp
+++ b/workspace/plasma/applets/tasks/abstracttaskitem.cpp
@@ -103,6 +103,7 @@ void AbstractTaskItem::queueUpdate()
void AbstractTaskItem::timerEvent(QTimerEvent *event)
{
if (event->timerId() == m_updateTimerId) {
+ killTimer(m_updateTimerId);
update();
m_updateTimerId = -1;
}
diff --git a/workspace/plasma/applets/tasks/taskgroupitem.cpp \
b/workspace/plasma/applets/tasks/taskgroupitem.cpp index a5e1ed2..8a5151f 100644
--- a/workspace/plasma/applets/tasks/taskgroupitem.cpp
+++ b/workspace/plasma/applets/tasks/taskgroupitem.cpp
@@ -289,6 +289,7 @@ void TaskGroupItem::queueGeometryUpdate()
void TaskGroupItem::timerEvent(QTimerEvent *event)
{
if (event->timerId() == m_geometryUpdateTimerId) {
+ killTimer(m_geometryUpdateTimerId);
updateGeometry();
m_geometryUpdateTimerId = -1;
}
_______________________________________________
Panel-devel mailing list
Panel-devel@kde.org
https://mail.kde.org/mailman/listinfo/panel-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic