Changeset 90907 in webkit


Ignore:
Timestamp:
Jul 13, 2011 5:32:30 AM (13 years ago)
Author:
andreas.kling@nokia.com
Message:

[Qt][WK2] Undelayed WorkItems are leaked after execution.
https://bugs.webkit.org/show_bug.cgi?id=64447

Reviewed by Benjamin Poulain.

  • Platform/qt/WorkQueueQt.cpp:

(WorkQueue::WorkItemQt::executeAndDelete):
(WorkQueue::WorkItemQt::timerEvent):
(WorkQueue::scheduleWork):

Location:
trunk/Source/WebKit2
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit2/ChangeLog

    r90899 r90907  
     12011-07-13  Andreas Kling  <kling@webkit.org>
     2
     3        [Qt][WK2] Undelayed WorkItems are leaked after execution.
     4        https://bugs.webkit.org/show_bug.cgi?id=64447
     5
     6        Reviewed by Benjamin Poulain.
     7
     8        * Platform/qt/WorkQueueQt.cpp:
     9        (WorkQueue::WorkItemQt::executeAndDelete):
     10        (WorkQueue::WorkItemQt::timerEvent):
     11        (WorkQueue::scheduleWork):
     12
    1132011-07-12  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
    214
  • trunk/Source/WebKit2/Platform/qt/WorkQueueQt.cpp

    r89947 r90907  
    6666    }
    6767
     68    Q_SLOT void executeAndDelete()
     69    {
     70        execute();
     71        delete this;
     72    }
     73
    6874    virtual void timerEvent(QTimerEvent*)
    6975    {
    70         execute();
    71         delete this;
     76        executeAndDelete();
    7277    }
    7378
     
    109114    WorkQueue::WorkItemQt* itemQt = new WorkQueue::WorkItemQt(this, item.leakPtr());
    110115    itemQt->moveToThread(m_workThread);
    111     QMetaObject::invokeMethod(itemQt, "execute", Qt::QueuedConnection);
     116    QMetaObject::invokeMethod(itemQt, "executeAndDelete", Qt::QueuedConnection);
    112117}
    113118
Note: See TracChangeset for help on using the changeset viewer.