SourceCode* getSourceCode() { string SourceCodeNode = "SourceCode"; TiXmlElement *pNode = NULL; vector<TiXmlElement *> Nodes; if (GetNodePointerByName(pProjectNodes,SourceCodeNode,pNode)) { string urlNode = "Url"; string versionNode = "Version"; string localPathNode = "LocalPath"; TiXmlElement *pTempNode = pNode; SourceCode* sourceCode = new SourceCode(); if (GetChildNodeByName(pTempNode,urlNode,pNode)) { sourceCode->SetUrl(pNode->GetText()); if (GetChildNodeByName(pTempNode,versionNode,pNode)) { sourceCode->SetVersion(pNode->GetText()); if (GetChildNodeByName(pTempNode,localPathNode,pNode)) { sourceCode->SetLocalPath(pNode->GetText()); //delete pNode; //delete pTempNode; return sourceCode; } } } } return NULL; }