MCPcopy Create free account
hub / github.com/Kitware/VTK / xmlStrncat

Function xmlStrncat

ThirdParty/libxml2/vtklibxml2/xmlstring.c:455–478  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

453 */
454
455xmlChar *
456xmlStrncat(xmlChar *cur, const xmlChar *add, int len) {
457 int size;
458 xmlChar *ret;
459
460 if ((add == NULL) || (len == 0))
461 return(cur);
462 if (len < 0)
463 return(NULL);
464 if (cur == NULL)
465 return(xmlStrndup(add, len));
466
467 size = xmlStrlen(cur);
468 if ((size < 0) || (size > INT_MAX - len))
469 return(NULL);
470 ret = (xmlChar *) xmlRealloc(cur, (size_t) size + len + 1);
471 if (ret == NULL) {
472 xmlFree(cur);
473 return(NULL);
474 }
475 memcpy(&ret[size], add, len);
476 ret[size + len] = 0;
477 return(ret);
478}
479
480/**
481 * xmlStrncatNew:

Callers 3

FREE_AND_NULLFunction · 0.85
xmlSchemaVPushTextFunction · 0.85
xmlStrcatFunction · 0.85

Calls 2

xmlStrndupFunction · 0.85
xmlStrlenFunction · 0.85

Tested by

no test coverage detected