You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@xerces.apache.org by xe...@xml.apache.org on 2004/09/17 12:16:37 UTC
[jira] Commented: (XERCESC-1273) Memory leak with writeToString in DOMWriter..Urgent Plz
The following comment has been added to this issue:
Author: Dee
Created: Fri, 17 Sep 2004 3:15 AM
Body:
Hi,
i also tried using this snippet ..but the memory leak is still there..
std::string GetXmlStringNew(DOMNode *pNode)
{
std::string sXML = "";
try
{
DOMImplementation* impl = DOMImplementationRegistry::getDOMImplementation(X("Core"));
// get the XML string out of the DOM
DOMWriter *theSerializer = impl->createDOMWriter();
XMLCh tempStr[100];
MemBufFormatTarget destination;
bool retVal;
try
{
retVal = theSerializer->writeNode(&destination, *pNode);
}
catch (...)
{
retVal = false;
}
//const
char *charString = (retVal ? XMLString::replicate((char*)destination.getRawBuffer()) : 0);
//delete theSerializer;
theSerializer->release();
//******************************
// std::string sRet(charString);
sXML = charString;
XMLString::release(&charString);
return sXML;
}
catch(const XMLException& toCatch)
{
char *pMsg = XMLString::transcode(toCatch.getMessage());
XMLString::release(&pMsg);
}
return sXML ;
}
//************************
Plz help..
---------------------------------------------------------------------
View this comment:
http://issues.apache.org/jira/browse/XERCESC-1273?page=comments#action_53165
---------------------------------------------------------------------
View the issue:
http://issues.apache.org/jira/browse/XERCESC-1273
Here is an overview of the issue:
---------------------------------------------------------------------
Key: XERCESC-1273
Summary: Memory leak with writeToString in DOMWriter..Urgent Plz
Type: Bug
Status: Unassigned
Priority: Critical
Project: Xerces-C++
Versions:
2.4.0
Assignee:
Reporter: Dee
Created: Fri, 17 Sep 2004 1:48 AM
Updated: Fri, 17 Sep 2004 3:15 AM
Description:
Hi All,
I have a very critical issue and we a re trying to implement this in our mission critical application..
I'm trying to use writeToString in DOMWriter using the function GetXmlString below ---->
I am getting a memory leak proportionate to the size of document been serialized.
I'm unable to free up the memory allocated .
Is it something else we need to do ensure that the leak is closed..
Kindly suggest..
std::string GetXmlString(DOMNode *pNode)
{
std::string sXML = "";
try
{
DOMImplementation* impl = DOMImplementationRegistry::getDOMImplementation(X("Core"));
// get the XML string out of the DOM
DOMWriter *theSerializer = impl->createDOMWriter();
XMLCh *xXml = theSerializer->writeToString(*pNode);
char *pChar = XMLString::transcode(xXml);
sXML = pChar;
XMLString::release(&pChar);
XMLString::release(&xXml);
delete theSerializer;
// delete impl;
// theSerializer->release();
//delete theSerializer;
}
catch(const XMLException& toCatch)
{
char *pMsg = XMLString::transcode(toCatch.getMessage());
XMLString::release(&pMsg);
}
return sXML;
}
---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
If you want more information on JIRA, or have a bug to report see:
http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: xerces-c-dev-unsubscribe@xml.apache.org
For additional commands, e-mail: xerces-c-dev-help@xml.apache.org