srsf/nssvascontacthdlr/src/nssvasccontacthandlerimpl.cpp
branchRCL_3
changeset 27 01e4abc4f07e
parent 24 bf318c0ae8c0
equal deleted inserted replaced
24:bf318c0ae8c0 27:01e4abc4f07e
  1520             delete aTagList->At( i );
  1520             delete aTagList->At( i );
  1521             aTagList->Delete( i );
  1521             aTagList->Delete( i );
  1522             }
  1522             }
  1523         }
  1523         }
  1524         
  1524         
  1525 //    TRAPD( err, // trapping is a fix to make the function non-leaving
  1525     TRAPD( err, // trapping is a fix to make the function non-leaving
  1526 
  1526 
  1527 	    // Add the tags to the to-be-deleted list.
  1527 	    // Add the tags to the to-be-deleted list.
  1528 	    // (there are 1 or 2 tags in aTagList depending on
  1528 	    // (there are 1 or 2 tags in aTagList depending on
  1529 	    //  whether nickname is also there or not)
  1529 	    //  whether nickname is also there or not)
  1530 	    TRAPD(err,
  1530 	    for ( TInt k( 0 ); k < aTagList->Count(); k++ )
  1531 		for ( TInt k( 0 ); k < aTagList->Count(); k++ )
       
  1532 	        {
  1531 	        {
  1533 	        iDeleteTagListArray->AppendL( (*aTagList)[k] );
  1532 	        iDeleteTagListArray->AppendL( (*aTagList)[k] );
  1534 	        }
  1533 	        }
  1535 			);
  1534 
  1536 		if ( err != KErrNone )
       
  1537 			{
       
  1538 			// Destroy tag list
       
  1539 	    	aTagList->Reset();
       
  1540 	    	delete aTagList;
       
  1541 	    	aTagList = 0;
       
  1542 	        return;
       
  1543 			}
       
  1544 	    // We have processed this ID
  1535 	    // We have processed this ID
  1545 	    RUBY_DEBUG1( "CNssContactHandlerImplementation::DoRemoveNamesAfterGetTagList Before removal. iDelList.Count [%d]", iDelList.Count() );
  1536 	    RUBY_DEBUG1( "CNssContactHandlerImplementation::DoRemoveNamesAfterGetTagList Before removal. iDelList.Count [%d]", iDelList.Count() );
  1546 	    if( iDelList.Count() > 0 ) 
  1537 	    if( iDelList.Count() > 0 ) 
  1547 	    	{
  1538 	    	{
  1548 	    	iDelList.Remove( 0 );
  1539 	    	iDelList.Remove( 0 );
  1578 	    // If we just finished converting the last ID, move to the next phase.
  1569 	    // If we just finished converting the last ID, move to the next phase.
  1579 	    else{
  1570 	    else{
  1580 	        RUBY_DEBUG0( "DoRemoveNamesAfterGetTagList Moving to the next phase" );
  1571 	        RUBY_DEBUG0( "DoRemoveNamesAfterGetTagList Moving to the next phase" );
  1581 	        DoRemoveNamesCallDeleteTag();
  1572 	        DoRemoveNamesCallDeleteTag();
  1582 	        }
  1573 	        }
  1583 //        );  // TRAPD
  1574         );  // TRAPD
  1584 //        if( err != KErrNone ) 
  1575         if( err != KErrNone ) 
  1585 //        	{
  1576         	{
  1586 //        	RUBY_ERROR1( "CNssContactHandlerImplementation::DoRemoveNamesAfterGetTagList Leaves with [%d] inside", err );
  1577         	RUBY_ERROR1( "CNssContactHandlerImplementation::DoRemoveNamesAfterGetTagList Leaves with [%d] inside", err );
  1587 //        	}
  1578         	}
  1588 		// Destroy tag list
  1579 		// Destroy tag list
  1589 	    aTagList->Reset();
  1580 	    aTagList->Reset();
  1590 	    delete aTagList;
  1581 	    delete aTagList;
  1591 	    aTagList = 0;
  1582 	    aTagList = 0;
  1592     }
  1583     }
  1921                             // set RRD data
  1912                             // set RRD data
  1922                             CArrayFixFlat<TInt> *extIds = new (ELeave) CArrayFixFlat<TInt>( 1 );
  1913                             CArrayFixFlat<TInt> *extIds = new (ELeave) CArrayFixFlat<TInt>( 1 );
  1923                             CleanupStack::PushL( extIds );
  1914                             CleanupStack::PushL( extIds );
  1924 
  1915 
  1925                             extIds->AppendL( iContactQueue[k].iID ); 
  1916                             extIds->AppendL( iContactQueue[k].iID ); 
  1926                             if ( iExtensionList[i].iCommand == EMessageCommand ||
  1917                             extIds->AppendL( fieldId ); 
  1927                                   iExtensionList[i].iCommand == EVideoCommand )
       
  1928                                 {
       
  1929                                 TInt id = iPbkHandler->FieldIdL();
       
  1930                                 if ( id )
       
  1931                                     {
       
  1932                                     extIds->AppendL( id );
       
  1933                                     }
       
  1934                                 else
       
  1935                                     {
       
  1936                                     extIds->AppendL( fieldId );
       
  1937                                     }
       
  1938                                 }
       
  1939                             else
       
  1940                                 {
       
  1941                                 extIds->AppendL( fieldId );
       
  1942                                 }
       
  1943                             extIds->AppendL( action );
  1918                             extIds->AppendL( action );
  1944                             extIds->AppendL( iContactQueue[k].iType );
  1919                             extIds->AppendL( iContactQueue[k].iType );
  1945                             extIds->AppendL( iExtensionList[i].iCommand );
  1920                             extIds->AppendL( iExtensionList[i].iCommand );
  1946 
  1921 
  1947                             rrd->SetIntArrayL ( extIds );
  1922                             rrd->SetIntArrayL ( extIds );