accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommandObserver.cpp
changeset 45 c6215323ad55
parent 12 e978f818f9bd
child 61 8cb079868133
--- a/accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommandObserver.cpp	Wed Jun 23 19:38:32 2010 +0300
+++ b/accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommandObserver.cpp	Tue Jul 06 15:43:30 2010 +0300
@@ -181,25 +181,28 @@
     {
     COM_TRACE_( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel()" );
 
-    iAsyProxyCommsSrvc->iAsyComms.CancelNotifyProcessCommand();
-
-    if ( !iInDestructionPhase )
+    if ( iAsyProxyCommsSrvc )
         {
-        COM_TRACE_( "[AccFW:AsyProxy] Proxy Command Observation is Cancelled while Destruction is not in Progress" );
-    #ifdef _DEBUG
-        TRAPD( errUpdate, iAsyProxyCommsSrvc->UpdateAsyCommsStackL() );
-        TRAPD( errCreate, iAsyProxyCommsSrvc->CreateAsyCommandHandlerL( this ) );
+        iAsyProxyCommsSrvc->iAsyComms.CancelNotifyProcessCommand();
+    
+        if ( !iInDestructionPhase )
+            {
+            COM_TRACE_( "[AccFW:AsyProxy] Proxy Command Observation is Cancelled while Destruction is not in Progress" );
+        #ifdef _DEBUG
+            TRAPD( errUpdate, iAsyProxyCommsSrvc->UpdateAsyCommsStackL() );
+            TRAPD( errCreate, iAsyProxyCommsSrvc->CreateAsyCommandHandlerL( this ) );
+            
+            COM_TRACE_1( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - errUpdate == %d", errUpdate );
+            COM_TRACE_1( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - errCreate == %d", errCreate );
+        #else
+            TRAP_IGNORE( iAsyProxyCommsSrvc->UpdateAsyCommsStackL() );
+            TRAP_IGNORE( iAsyProxyCommsSrvc->CreateAsyCommandHandlerL( this ) );
+        #endif
+            }
         
-        COM_TRACE_1( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - errUpdate == %d", errUpdate );
-        COM_TRACE_1( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - errCreate == %d", errCreate );
-    #else
-        TRAP_IGNORE( iAsyProxyCommsSrvc->UpdateAsyCommsStackL() );
-        TRAP_IGNORE( iAsyProxyCommsSrvc->CreateAsyCommandHandlerL( this ) );
-    #endif
+        iAsyProxyCommsSrvc->Destroy( KErrNotFound ); // Transaction Id is not known know
         }
-    
-    iAsyProxyCommsSrvc->Destroy( KErrNotFound ); // Transaction Id is not known know
-
+        
     COM_TRACE_( "[AccFW:AsyProxy] CASYProxyCommandObserver::DoCancel - return void" );
     }