accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommandObserver.cpp
branchGCC_SURGE
changeset 49 00076e39386f
parent 45 c6215323ad55
child 61 8cb079868133
--- a/accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommandObserver.cpp	Wed Jun 23 22:58:50 2010 +0100
+++ b/accessoryservices/accessoryserver/src/ASYProxy/ASYProxyCommandObserver.cpp	Thu Jul 22 16:45:41 2010 +0100
@@ -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" );
     }