MCPcopy Create free account
hub / github.com/Kitware/VTK / xmlTextReaderReadAttributeValue

Function xmlTextReaderReadAttributeValue

ThirdParty/libxml2/vtklibxml2/xmlreader.c:2887–2931  ·  view source on GitHub ↗

* xmlTextReaderReadAttributeValue: * @reader: the xmlTextReaderPtr used * * Parses an attribute value into one or more Text and EntityReference nodes. * * Returns 1 in case of success, 0 if the reader was not positioned on an * attribute node or all the attribute values have been read, or -1 * in case of error. */

Source from the content-addressed store, hash-verified

2885 * in case of error.
2886 */
2887int
2888xmlTextReaderReadAttributeValue(xmlTextReaderPtr reader) {
2889 if (reader == NULL)
2890 return(-1);
2891 if (reader->node == NULL)
2892 return(-1);
2893 if (reader->curnode == NULL)
2894 return(0);
2895 if (reader->curnode->type == XML_ATTRIBUTE_NODE) {
2896 if (reader->curnode->children == NULL)
2897 return(0);
2898 reader->curnode = reader->curnode->children;
2899 } else if (reader->curnode->type == XML_NAMESPACE_DECL) {
2900 xmlNsPtr ns = (xmlNsPtr) reader->curnode;
2901
2902 if (reader->faketext == NULL) {
2903 reader->faketext = xmlNewDocText(reader->node->doc,
2904 ns->href);
2905 if (reader->faketext == NULL) {
2906 xmlTextReaderErrMemory(reader);
2907 return(-1);
2908 }
2909 } else {
2910 if ((reader->faketext->content != NULL) &&
2911 (reader->faketext->content !=
2912 (xmlChar *) &(reader->faketext->properties)))
2913 xmlFree(reader->faketext->content);
2914 if (ns->href == NULL) {
2915 reader->faketext->content = NULL;
2916 } else {
2917 reader->faketext->content = xmlStrdup(ns->href);
2918 if (reader->faketext->content == NULL) {
2919 xmlTextReaderErrMemory(reader);
2920 return(-1);
2921 }
2922 }
2923 }
2924 reader->curnode = reader->faketext;
2925 } else {
2926 if (reader->curnode->next == NULL)
2927 return(0);
2928 reader->curnode = reader->curnode->next;
2929 }
2930 return(1);
2931}
2932
2933/**
2934 * xmlTextReaderConstEncoding:

Callers

nothing calls this directly

Calls 3

xmlNewDocTextFunction · 0.85
xmlTextReaderErrMemoryFunction · 0.85
xmlStrdupFunction · 0.85

Tested by

no test coverage detected