MCPcopy Create free account
hub / github.com/cuberite/cuberite / externalEntityInitProcessor3

Function externalEntityInitProcessor3

lib/expat/xmlparse.c:2087–2133  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

2085}
2086
2087static enum XML_Error PTRCALL
2088externalEntityInitProcessor3(XML_Parser parser,
2089 const char *start,
2090 const char *end,
2091 const char **endPtr)
2092{
2093 int tok;
2094 const char *next = start; /* XmlContentTok doesn't always set the last arg */
2095 eventPtr = start;
2096 tok = XmlContentTok(encoding, start, end, &next);
2097 eventEndPtr = next;
2098
2099 switch (tok) {
2100 case XML_TOK_XML_DECL:
2101 {
2102 enum XML_Error result;
2103 result = processXmlDecl(parser, 1, start, next);
2104 if (result != XML_ERROR_NONE)
2105 return result;
2106 switch (ps_parsing) {
2107 case XML_SUSPENDED:
2108 *endPtr = next;
2109 return XML_ERROR_NONE;
2110 case XML_FINISHED:
2111 return XML_ERROR_ABORTED;
2112 default:
2113 start = next;
2114 }
2115 }
2116 break;
2117 case XML_TOK_PARTIAL:
2118 if (!ps_finalBuffer) {
2119 *endPtr = start;
2120 return XML_ERROR_NONE;
2121 }
2122 return XML_ERROR_UNCLOSED_TOKEN;
2123 case XML_TOK_PARTIAL_CHAR:
2124 if (!ps_finalBuffer) {
2125 *endPtr = start;
2126 return XML_ERROR_NONE;
2127 }
2128 return XML_ERROR_PARTIAL_CHAR;
2129 }
2130 processor = externalEntityContentProcessor;
2131 tagLevel = 1;
2132 return externalEntityContentProcessor(parser, start, end, endPtr);
2133}
2134
2135static enum XML_Error PTRCALL
2136externalEntityContentProcessor(XML_Parser parser,

Callers 1

Calls 2

processXmlDeclFunction · 0.85

Tested by

no test coverage detected