cl_log(LOG_DEBUG, "Building crm message - 4"); 
createCrmMsg(const char *reference,	     const char *src_subsystem,	     const char *dest_subsystem,	     xmlNodePtr data,	     gboolean is_request){    xmlDocPtr doc;    const char *message_type = XML_MSG_TAG_RESPONSE;        cl_log(LOG_DEBUG, "Building crm message - 1");        if(reference == NULL) reference = generateReference();    if(is_request) message_type = XML_MSG_TAG_REQUEST;        doc = xmlNewDoc("1.0");    doc->children = xmlNewDocNode(doc, NULL, XML_MSG_TAG, NULL);    cl_log(LOG_DEBUG, "Building crm message - 2");    // the root_xml_node node    xmlSetProp(doc->children, XML_ATTR_VERSION, CRM_VERSION);    xmlSetProp(doc->children, XML_MSG_ATTR_MSGTYPE, message_type);    xmlSetProp(doc->children, XML_MSG_ATTR_REFERENCE, reference);    xmlSetProp(doc->children, XML_ATTR_TSTAMP, getNow());    cl_log(LOG_DEBUG, "Building crm message - 3");        if(dest_subsystem == NULL)	xmlSetProp(doc->children, XML_MSG_ATTR_SUBSYS, "none");    else	xmlSetProp(doc->children, XML_MSG_ATTR_SUBSYS, dest_subsystem);    if(src_subsystem == NULL)	xmlSetProp(doc->children, XML_MSG_ATTR_SUBSYS, "none");    else	xmlSetProp(doc->children, XML_MSG_ATTR_SRCSUBSYS, src_subsystem);	    cl_log(LOG_DEBUG, "Building crm message - 4");    // create a place holder for the eventual data    xmlNodePtr xml_node   = xmlNewChild(doc->children, NULL, message_type, NULL);    cl_log(LOG_DEBUG, "Building crm message - 5");    if(data != NULL)    {	xmlAddChild(xml_node, data);	xmlSetProp(data, XML_MSG_ATTR_REFERENCE, reference);    }    cl_log(LOG_DEBUG, "Building crm message - 6");    cl_log(LOG_DEBUG, "Building crm message - 8");        return xmlDocGetRootElement(doc);}
8182	/local/tlutelli/issta_data/temp/c/2005_temp/2005/8182/ea49e927cf7a87359e44d087341624427b4dacc8/msgutils.c/buggy/crm/common/msgutils.c