[PATCH] Make sure to set status in eo_parser_xml to avoid crash

# HG changeset patch # User Dan Smith <danms@us.ibm.com> # Date 1203608641 28800 # Node ID 393e3ca977954e41883756bc8c1093ed20f2e601 # Parent c19e321766902af6dba29025be964d8d45537c51 Make sure to set status in eo_parser_xml to avoid crash if the caller tries to print the error message. Signed-off-by: Dan Smith <danms@us.ibm.com> diff -r c19e32176690 -r 393e3ca97795 eo_parser_xml.c --- a/eo_parser_xml.c Wed Feb 13 07:45:33 2008 -0800 +++ b/eo_parser_xml.c Thu Feb 21 07:44:01 2008 -0800 @@ -327,7 +327,7 @@ static CMPIStatus parse_instance(const C { char *class = NULL; xmlNode *child; - CMPIStatus s; + CMPIStatus s = {CMPI_RC_OK, NULL}; CMPIObjectPath *op; if (root->type != XML_ELEMENT_NODE) { @@ -360,12 +360,18 @@ static CMPIStatus parse_instance(const C op = CMNewObjectPath(broker, ns, class, &s); if ((op == NULL) || (s.rc != CMPI_RC_OK)) { CU_DEBUG("Unable to create path for %s:%s", ns, class); + cu_statusf(broker, &s, + CMPI_RC_ERR_FAILED, + "Unable to create path for %s:%s", ns, class); goto out; } *inst = CMNewInstance(broker, op, &s); if ((*inst == NULL) || (s.rc != CMPI_RC_OK)) { CU_DEBUG("Unable to create inst for %s:%s", ns, class); + cu_statusf(broker, &s, + CMPI_RC_ERR_FAILED, + "Unable to create instance for %s:%s", ns, class); goto out; }

Dan Smith wrote:
# HG changeset patch # User Dan Smith <danms@us.ibm.com> # Date 1203608641 28800 # Node ID 393e3ca977954e41883756bc8c1093ed20f2e601 # Parent c19e321766902af6dba29025be964d8d45537c51 Make sure to set status in eo_parser_xml to avoid crash if the caller tries to print the error message.
Signed-off-by: Dan Smith <danms@us.ibm.com>
+1 :) -- Regards Heidi Eckhart Software Engineer IBM Linux Technology Center - Open Hypervisor
participants (2)
-
Dan Smith
-
Heidi Eckhart