syncmlfw/dm/dmutils/src/nsmldmtreedtd.cpp
changeset 73 ae69c2e8bc34
parent 22 19fb38abab1d
equal deleted inserted replaced
71:d2517372cc44 73:ae69c2e8bc34
   468 	// read node tag
   468 	// read node tag
   469 	tag = aReader.ReadUint8L();
   469 	tag = aReader.ReadUint8L();
   470 	if (tag == EDDFNode )
   470 	if (tag == EDDFNode )
   471 	    {
   471 	    {
   472 		newNode = new (ELeave) CNSmlDmNode();
   472 		newNode = new (ELeave) CNSmlDmNode();
   473        	newNode->iParent= aParent;
   473 		CleanupStack::PushL(newNode);
       
   474     	newNode->iParent= aParent;
   474 		aNodeListPtr->iNode = newNode;
   475 		aNodeListPtr->iNode = newNode;
   475 		lastInList=aNodeListPtr;
   476 		lastInList=aNodeListPtr;
   476     
   477     
   477 		ParseNodeWBXMLL( aReader, newNode );
   478 		ParseNodeWBXMLL( aReader, newNode );
       
   479 		CleanupStack::Pop(newNode);
   478 		newNode = NULL;
   480 		newNode = NULL;
   479 		}
   481 		}
   480 	else
   482 	else
   481 		{
   483 		{
   482 		delete aNodeListPtr;
   484 		delete aNodeListPtr;
   494 		{
   496 		{
   495    		lastInList->iNext = new (ELeave) CNSmlDmNodeList();
   497    		lastInList->iNext = new (ELeave) CNSmlDmNodeList();
   496    		lastInList=lastInList->iNext;
   498    		lastInList=lastInList->iNext;
   497 		   
   499 		   
   498 		newNode = new (ELeave) CNSmlDmNode();
   500 		newNode = new (ELeave) CNSmlDmNode();
       
   501 		CleanupStack::PushL(newNode);
   499 	   	newNode->iParent= aParent;
   502 	   	newNode->iParent= aParent;
   500 	   	lastInList->iNode = newNode;
   503 	   	lastInList->iNode = newNode;
   501 	        
   504 	        
   502        	lastInList->ParseNodeWBXMLL( aReader, newNode );
   505        	lastInList->ParseNodeWBXMLL( aReader, newNode );
   503             
   506             
   504       	// read next tag
   507       	// read next tag
   505     	tag = aReader.ReadUint8L();
   508     	tag = aReader.ReadUint8L();
       
   509     	CleanupStack::Pop(newNode);
   506 		}
   510 		}
   507 	return tag;
   511 	return tag;
   508 	}
   512 	}
   509 	
   513 	
   510 
   514