summaryrefslogtreecommitdiff
path: root/src/utils/xml
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2017-03-28 20:20:54 +0300
committerAndrei Karas <akaras@inbox.ru>2017-03-28 23:25:13 +0300
commit75a5173176adfc4bc417c10df137d9ea8d90d403 (patch)
tree2d095e72f084ff96ee5ce3608453d98da0eda5d7 /src/utils/xml
parentb6831b3b3053b1777402a35d8b3ae3cca2f62bc4 (diff)
downloadmanaplus-75a5173176adfc4bc417c10df137d9ea8d90d403.tar.gz
manaplus-75a5173176adfc4bc417c10df137d9ea8d90d403.tar.bz2
manaplus-75a5173176adfc4bc417c10df137d9ea8d90d403.tar.xz
manaplus-75a5173176adfc4bc417c10df137d9ea8d90d403.zip
Change memory allocation in Virtfs::LoadFile from calloc to new.
Diffstat (limited to 'src/utils/xml')
-rw-r--r--src/utils/xml/libxml.cpp9
-rw-r--r--src/utils/xml/pugixml.cpp17
-rw-r--r--src/utils/xml/tinyxml2.cpp15
3 files changed, 21 insertions, 20 deletions
diff --git a/src/utils/xml/libxml.cpp b/src/utils/xml/libxml.cpp
index 87fb2577d..7abed4a09 100644
--- a/src/utils/xml/libxml.cpp
+++ b/src/utils/xml/libxml.cpp
@@ -98,8 +98,9 @@ namespace XML
valid = true;
if (useResman == UseVirtFs_true)
{
- data = static_cast<char*>(VirtFs::loadFile(
- filename.c_str(), size));
+ data = VirtFs::loadFile(
+ filename.c_str(),
+ size);
}
else
{
@@ -119,7 +120,7 @@ namespace XML
else
{
file.seekg(0, std::ios::beg);
- data = static_cast<char*>(malloc(size));
+ data = new char[size];
file.read(data, size);
}
file.close();
@@ -133,7 +134,7 @@ namespace XML
if (data)
{
mDoc = xmlParseMemory(data, size);
- free(data);
+ delete [] data;
if (!mDoc)
{
diff --git a/src/utils/xml/pugixml.cpp b/src/utils/xml/pugixml.cpp
index 6fada3605..a1ca7be70 100644
--- a/src/utils/xml/pugixml.cpp
+++ b/src/utils/xml/pugixml.cpp
@@ -76,8 +76,9 @@ namespace XML
valid = true;
if (useResman == UseVirtFs_true)
{
- data = static_cast<char*>(VirtFs::loadFile(
- filename.c_str(), size));
+ data = VirtFs::loadFile(
+ filename.c_str(),
+ size);
}
else
{
@@ -97,7 +98,7 @@ namespace XML
else
{
file.seekg(0, std::ios::beg);
- data = static_cast<char*>(malloc(size));
+ data = new char[size];
file.read(data, size);
}
file.close();
@@ -119,7 +120,7 @@ namespace XML
if (result.status != pugi::status_ok)
{
showErrorStatus(result);
- free(data);
+ delete [] data;
}
else
{
@@ -145,7 +146,7 @@ namespace XML
if (!data)
return;
- char *buf = static_cast<char*>(calloc(size + 1, 1));
+ char *buf = new char[size + 1];
strncpy(buf, data, size);
buf[size] = 0;
pugi::xml_parse_result result = mDoc.load_buffer_inplace(buf,
@@ -155,7 +156,7 @@ namespace XML
if (result.status != pugi::status_ok)
{
showErrorStatus(result);
- free(buf);
+ delete [] buf;
}
else
{
@@ -165,10 +166,8 @@ namespace XML
Document::~Document()
{
- free(mData);
+ delete [] mData);
mData = nullptr;
-// if (mDoc)
-// xmlFreeDoc(mDoc);
}
XmlNodePtr Document::rootNode()
diff --git a/src/utils/xml/tinyxml2.cpp b/src/utils/xml/tinyxml2.cpp
index 1c1f38493..7e2ef5ebb 100644
--- a/src/utils/xml/tinyxml2.cpp
+++ b/src/utils/xml/tinyxml2.cpp
@@ -68,8 +68,9 @@ namespace XML
valid = true;
if (useResman == UseVirtFs_true)
{
- data = static_cast<char*>(VirtFs::loadFile(
- filename.c_str(), size));
+ data = VirtFs::loadFile(
+ filename.c_str(),
+ size);
}
else
{
@@ -89,7 +90,7 @@ namespace XML
else
{
file.seekg(0, std::ios::beg);
- data = static_cast<char*>(malloc(size));
+ data = new char[size];
file.read(data, size);
}
file.close();
@@ -108,7 +109,7 @@ namespace XML
if (result != tinyxml2::XML_SUCCESS)
{
showErrorStatus(mDoc);
- free(data);
+ delete [] data;
}
else
{
@@ -132,7 +133,7 @@ namespace XML
if (!data)
return;
- char *buf = static_cast<char*>(calloc(size + 1, 1));
+ char *buf = new char[size + 1];
strncpy(buf, data, size);
buf[size] = 0;
@@ -141,7 +142,7 @@ namespace XML
if (result != tinyxml2::XML_SUCCESS)
{
showErrorStatus(mDoc);
- free(buf);
+ delete [] buf;
}
else
{
@@ -151,7 +152,7 @@ namespace XML
Document::~Document()
{
- free(mData);
+ delete [] mData;
mData = nullptr;
}