[Freeswitch-svn] [commit] r13398 - freeswitch/trunk/src
FreeSWITCH SVN
mikej at freeswitch.org
Tue May 19 14:25:52 PDT 2009
Author: mikej
Date: Tue May 19 16:25:52 2009
New Revision: 13398
Log:
core: fix segfault on out of memory situation. (FSCORE-366)
Modified:
freeswitch/trunk/src/switch_xml.c
Modified: freeswitch/trunk/src/switch_xml.c
==============================================================================
--- freeswitch/trunk/src/switch_xml.c (original)
+++ freeswitch/trunk/src/switch_xml.c Tue May 19 16:25:52 2009
@@ -2316,8 +2316,9 @@
static const char *ent[] = { "lt;", "<", "gt;", ">", "quot;", """,
"apos;", "'", "amp;", "&", NULL
};
- switch_xml_root_t root = (switch_xml_root_t) memset(malloc(sizeof(struct switch_xml_root)),
- '\0', sizeof(struct switch_xml_root));
+ switch_xml_root_t root = (switch_xml_root_t) malloc(sizeof(struct switch_xml_root));
+ if (!root) return NULL;
+ memset(root, '\0', sizeof(struct switch_xml_root));
root->xml.name = (char *) name;
root->cur = &root->xml;
strcpy(root->err, root->xml.txt = (char *)"");
@@ -2372,9 +2373,9 @@
{
switch_xml_t child;
- if (!xml)
- return NULL;
- child = (switch_xml_t) memset(malloc(sizeof(struct switch_xml)), '\0', sizeof(struct switch_xml));
+ if (!xml) return NULL;
+ if (!(child = (switch_xml_t) malloc(sizeof(struct switch_xml)))) return NULL;
+ memset(child, '\0', sizeof(struct switch_xml));
child->name = (char *) name;
child->attr = SWITCH_XML_NIL;
child->off = off;
More information about the Freeswitch-svn
mailing list