MCPcopy Create free account
hub / github.com/Geant4/geant4 / handleUnknownEncoding

Function handleUnknownEncoding

source/externals/expat/src/xmlparse.c:4359–4391  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

4357}
4358
4359static enum XML_Error
4360handleUnknownEncoding(XML_Parser parser, const XML_Char *encodingName) {
4361 if (parser->m_unknownEncodingHandler) {
4362 XML_Encoding info;
4363 int i;
4364 for (i = 0; i < 256; i++)
4365 info.map[i] = -1;
4366 info.convert = NULL;
4367 info.data = NULL;
4368 info.release = NULL;
4369 if (parser->m_unknownEncodingHandler(parser->m_unknownEncodingHandlerData,
4370 encodingName, &info)) {
4371 ENCODING *enc;
4372 parser->m_unknownEncodingMem = MALLOC(parser, XmlSizeOfUnknownEncoding());
4373 if (! parser->m_unknownEncodingMem) {
4374 if (info.release)
4375 info.release(info.data);
4376 return XML_ERROR_NO_MEMORY;
4377 }
4378 enc = (parser->m_ns ? XmlInitUnknownEncodingNS : XmlInitUnknownEncoding)(
4379 parser->m_unknownEncodingMem, info.map, info.convert, info.data);
4380 if (enc) {
4381 parser->m_unknownEncodingData = info.data;
4382 parser->m_unknownEncodingRelease = info.release;
4383 parser->m_encoding = enc;
4384 return XML_ERROR_NONE;
4385 }
4386 }
4387 if (info.release != NULL)
4388 info.release(info.data);
4389 }
4390 return XML_ERROR_UNKNOWN_ENCODING;
4391}
4392
4393static enum XML_Error PTRCALL
4394prologInitProcessor(XML_Parser parser, const char *s, const char *end,

Callers 2

initializeEncodingFunction · 0.85
processXmlDeclFunction · 0.85

Calls 2

XmlSizeOfUnknownEncodingFunction · 0.85
releaseMethod · 0.80

Tested by

no test coverage detected