MCPcopy Create free account
hub / github.com/Kitware/CMake / externalEntityInitProcessor2

Function externalEntityInitProcessor2

Utilities/cmexpat/lib/xmlparse.c:3195–3238  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3193}
3194
3195static enum XML_Error PTRCALL
3196externalEntityInitProcessor2(XML_Parser parser, const char *start,
3197 const char *end, const char **endPtr) {
3198 const char *next = start; /* XmlContentTok doesn't always set the last arg */
3199 int tok = XmlContentTok(parser->m_encoding, start, end, &next);
3200 switch (tok) {
3201 case XML_TOK_BOM:
3202#if XML_GE == 1
3203 if (! accountingDiffTolerated(parser, tok, start, next, __LINE__,
3204 XML_ACCOUNT_DIRECT)) {
3205 accountingOnAbort(parser);
3206 return XML_ERROR_AMPLIFICATION_LIMIT_BREACH;
3207 }
3208#endif /* XML_GE == 1 */
3209
3210 /* If we are at the end of the buffer, this would cause the next stage,
3211 i.e. externalEntityInitProcessor3, to pass control directly to
3212 doContent (by detecting XML_TOK_NONE) without processing any xml text
3213 declaration - causing the error XML_ERROR_MISPLACED_XML_PI in doContent.
3214 */
3215 if (next == end && ! parser->m_parsingStatus.finalBuffer) {
3216 *endPtr = next;
3217 return XML_ERROR_NONE;
3218 }
3219 start = next;
3220 break;
3221 case XML_TOK_PARTIAL:
3222 if (! parser->m_parsingStatus.finalBuffer) {
3223 *endPtr = start;
3224 return XML_ERROR_NONE;
3225 }
3226 parser->m_eventPtr = start;
3227 return XML_ERROR_UNCLOSED_TOKEN;
3228 case XML_TOK_PARTIAL_CHAR:
3229 if (! parser->m_parsingStatus.finalBuffer) {
3230 *endPtr = start;
3231 return XML_ERROR_NONE;
3232 }
3233 parser->m_eventPtr = start;
3234 return XML_ERROR_PARTIAL_CHAR;
3235 }
3236 parser->m_processor = externalEntityInitProcessor3;
3237 return externalEntityInitProcessor3(parser, start, end, endPtr);
3238}
3239
3240static enum XML_Error PTRCALL
3241externalEntityInitProcessor3(XML_Parser parser, const char *start,

Callers 1

Calls 3

accountingDiffToleratedFunction · 0.85
accountingOnAbortFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…