private XMLParser *ResetParser() { Reset(); XMLParser *parser = entityContext.XmlParser; if (parser != null && LibExpat.XMLParserReset(parser, encoding) == XMLBool.FALSE) { throw new ExpatException(InternalStateError); } // all handlers have been cleared (except for unknownEncodingHandler) LibExpat.XMLSetUserData(parser, (IntPtr)parserHandle); ReInitializeHandlers(parser); LibExpat.XMLSetParamEntityParsing(parser, paramEntityParsing); return(parser); }