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

Function externalEntityInitProcessor3

Utilities/cmexpat/lib/xmlparse.c:3240–3290  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3238}
3239
3240static enum XML_Error PTRCALL
3241externalEntityInitProcessor3(XML_Parser parser, const char *start,
3242 const char *end, const char **endPtr) {
3243 int tok;
3244 const char *next = start; /* XmlContentTok doesn't always set the last arg */
3245 parser->m_eventPtr = start;
3246 tok = XmlContentTok(parser->m_encoding, start, end, &next);
3247 /* Note: These bytes are accounted later in:
3248 - processXmlDecl
3249 - externalEntityContentProcessor
3250 */
3251 parser->m_eventEndPtr = next;
3252
3253 switch (tok) {
3254 case XML_TOK_XML_DECL: {
3255 enum XML_Error result;
3256 result = processXmlDecl(parser, 1, start, next);
3257 if (result != XML_ERROR_NONE)
3258 return result;
3259 switch (parser->m_parsingStatus.parsing) {
3260 case XML_SUSPENDED:
3261 *endPtr = next;
3262 return XML_ERROR_NONE;
3263 case XML_FINISHED:
3264 return XML_ERROR_ABORTED;
3265 case XML_PARSING:
3266 if (parser->m_reenter) {
3267 return XML_ERROR_UNEXPECTED_STATE; // LCOV_EXCL_LINE
3268 }
3269 /* Fall through */
3270 default:
3271 start = next;
3272 }
3273 } break;
3274 case XML_TOK_PARTIAL:
3275 if (! parser->m_parsingStatus.finalBuffer) {
3276 *endPtr = start;
3277 return XML_ERROR_NONE;
3278 }
3279 return XML_ERROR_UNCLOSED_TOKEN;
3280 case XML_TOK_PARTIAL_CHAR:
3281 if (! parser->m_parsingStatus.finalBuffer) {
3282 *endPtr = start;
3283 return XML_ERROR_NONE;
3284 }
3285 return XML_ERROR_PARTIAL_CHAR;
3286 }
3287 parser->m_processor = externalEntityContentProcessor;
3288 parser->m_tagLevel = 1;
3289 return externalEntityContentProcessor(parser, start, end, endPtr);
3290}
3291
3292static enum XML_Error PTRCALL
3293externalEntityContentProcessor(XML_Parser parser, const char *start,

Callers 1

Calls 2

processXmlDeclFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…