* xmlReaderNewWalker: * @reader: an XML reader * @doc: a preparsed document * * Setup an xmltextReader to parse a preparsed XML document. * This reuses the existing @reader xmlTextReader. * * Returns 0 in case of success and -1 in case of error */
| 5307 | * Returns 0 in case of success and -1 in case of error |
| 5308 | */ |
| 5309 | int |
| 5310 | xmlReaderNewWalker(xmlTextReaderPtr reader, xmlDocPtr doc) |
| 5311 | { |
| 5312 | if (doc == NULL) |
| 5313 | return (-1); |
| 5314 | if (reader == NULL) |
| 5315 | return (-1); |
| 5316 | |
| 5317 | if (reader->input != NULL) { |
| 5318 | xmlFreeParserInputBuffer(reader->input); |
| 5319 | } |
| 5320 | if (reader->ctxt != NULL) { |
| 5321 | xmlCtxtReset(reader->ctxt); |
| 5322 | } |
| 5323 | |
| 5324 | reader->entNr = 0; |
| 5325 | reader->input = NULL; |
| 5326 | reader->mode = XML_TEXTREADER_MODE_INITIAL; |
| 5327 | reader->node = NULL; |
| 5328 | reader->curnode = NULL; |
| 5329 | reader->base = 0; |
| 5330 | reader->cur = 0; |
| 5331 | reader->allocs = XML_TEXTREADER_CTXT; |
| 5332 | reader->doc = doc; |
| 5333 | reader->state = XML_TEXTREADER_START; |
| 5334 | if (reader->dict == NULL) { |
| 5335 | if ((reader->ctxt != NULL) && (reader->ctxt->dict != NULL)) |
| 5336 | reader->dict = reader->ctxt->dict; |
| 5337 | else |
| 5338 | reader->dict = xmlDictCreate(); |
| 5339 | } |
| 5340 | return(0); |
| 5341 | } |
| 5342 | |
| 5343 | /** |
| 5344 | * xmlReaderNewDoc: |
nothing calls this directly
no test coverage detected