--- a/bluetoothengine/bteng/src/btengserver.cpp Mon Mar 15 12:41:15 2010 +0200
+++ b/bluetoothengine/bteng/src/btengserver.cpp Wed Mar 31 21:51:05 2010 +0300
@@ -335,6 +335,7 @@
void CBTEngServer::QueueTimer( CBTEngServer::TTimerQueued aTimer, TInt64 aInterval )
{
TRACE_FUNC_ARG( ( _L( "queueing timer %d" ), (TInt) aTimer ) )
+ __ASSERT_DEBUG( iTimer, PanicServer( EBTEngPanicMemberVarIsNull ) );
iTimerQueued |= aTimer;
TTimeIntervalMicroSeconds interval( aInterval );
switch( aTimer )
@@ -364,6 +365,10 @@
void CBTEngServer::RemoveTimer( CBTEngServer::TTimerQueued aTimer )
{
TRACE_FUNC_ARG( ( _L( "removing timer %d" ), (TInt) aTimer ) )
+ if(!iTimer)
+ {
+ return; // not fully constructed yet, don't do anything
+ }
iTimerQueued &= ~aTimer;
// Timers can be removed without being queued, no need to check.
switch( aTimer )