phonebookui/Phonebook2/remotecontactlookup/contactactionservice/src/cfsccontactactionpluginengine.cpp
branchRCL_3
changeset 23 5586b4d2ec3e
parent 0 e686773b3f54
child 64 c1e8ba0c2b16
equal deleted inserted replaced
21:b3431bff8c19 23:5586b4d2ec3e
    98                      
    98                      
    99             // Leave only if no memory. This way unstable plugins can not make 
    99             // Leave only if no memory. This way unstable plugins can not make 
   100             // service totaly unusable
   100             // service totaly unusable
   101             if ( error == KErrNoMemory )
   101             if ( error == KErrNoMemory )
   102                 {
   102                 {
       
   103                 implArray.ResetAndDestroy();            
   103                 User::Leave( error );
   104                 User::Leave( error );
   104                 }
   105                 }
   105             }
   106             }
   106         plugin = NULL;
   107         plugin = NULL;
   107         }
   108         }
   273             if ( iContactActionQueryResult.iPriority >= aMinPriority &&
   274             if ( iContactActionQueryResult.iPriority >= aMinPriority &&
   274                  iContactActionQueryResult.iActionMenuVisibility.iVisibility != 
   275                  iContactActionQueryResult.iActionMenuVisibility.iVisibility != 
   275                  TFscContactActionVisibility::EFscActionHidden )
   276                  TFscContactActionVisibility::EFscActionHidden )
   276                 {
   277                 {
   277                 iContactActionQueryResult.iAction = &action;
   278                 iContactActionQueryResult.iAction = &action;
   278                 iActionList->AppendL( iContactActionQueryResult );
   279                 if( iActionList )
       
   280                     {
       
   281                     iActionList->AppendL( iContactActionQueryResult );
       
   282                     }
   279                 }
   283                 }
   280             
   284             
   281             // if only one action is needed we stop method execution
   285             // if only one action is needed we stop method execution
   282             if ( iStopWhenOneActionFound && iActionList->Count() )
   286             if ( iStopWhenOneActionFound && iActionList && iActionList->Count() )
   283                 {
   287                 {
   284                 iLastEvent = ECasEventIdle;
   288                 iLastEvent = ECasEventIdle;
   285                 iObserver->QueryActionsComplete();
   289                 iObserver->QueryActionsComplete();
   286                 }
   290                 }
   287             else
   291             else
   321             {
   325             {
   322             // PriorityforContactSet was cancelled
   326             // PriorityforContactSet was cancelled
   323             iLastEvent = ECasEventIdle;
   327             iLastEvent = ECasEventIdle;
   324             iCurrentActionPlugin = 0;
   328             iCurrentActionPlugin = 0;
   325             iCurrentAction = 0;
   329             iCurrentAction = 0;
   326             iActionList->Reset();
   330             if( iActionList )
       
   331                 {
       
   332                 iActionList->Reset();
       
   333                 }
   327             break;
   334             break;
   328             }
   335             }
   329             
   336             
   330         default:
   337         default:
   331             {
   338             {