Fix handle leak in symbian QTimer implementation
authorShane Kearns <shane.kearns@accenture.com>
Fri, 7 Jan 2011 15:57:28 +0000 (15:57 +0000)
committerShane Kearns <shane.kearns@accenture.com>
Mon, 10 Jan 2011 10:47:55 +0000 (10:47 +0000)
commit2b1b617664bfc78f6e95e53dc0f9749bd1f2d27a
tree7231535f2fd19987c9143cc581468bb5769b0271
parent6e6bdedd06c72f857590b32462548448da6d59b5
Fix handle leak in symbian QTimer implementation

The timer handle was only being closed when a timer was cancelled,
which resulted in a leak for one shot timers that have completed normally.

Instead the timer is now closed in a destructor (closing null handles is
safe, so it doesn't matter if the handle was never created - e.g. in the
case of a zero timer)
Also added a handle check before creating a timer to prevent a leak in
case the start function is called twice in the backend.

Task-number: QTBUG-16380
Reviewed-by: mread
src/corelib/kernel/qeventdispatcher_symbian.cpp
tests/auto/qtimer/tst_qtimer.cpp