Explorar el Código

Support for self-closing tags.

master
Łukasz Sowa hace 11 años
padre
commit
b0639a0c6d
Se han modificado 1 ficheros con 8 adiciones y 0 borrados
  1. +8
    -0
      src/xml.c

+ 8
- 0
src/xml.c Ver fichero

@@ -535,6 +535,13 @@ static struct xml_node* xml_parse_node(struct xml_parser* parser) {
goto exit_failure;
}

/* If tag ends with `/' it's self closing, skip content lookup */
if ('/' == tag_open->buffer[tag_open->length - 1]) {
/* Drop `/'
*/
--tag_open->length;
goto node_creation;
}

/* If the content does not start with '<', a text content is assumed
*/
@@ -593,6 +600,7 @@ static struct xml_node* xml_parse_node(struct xml_parser* parser) {
*/
xml_string_free(tag_close);

node_creation:;
struct xml_node* node = malloc(sizeof(struct xml_node));
node->name = tag_open;
node->content = content;


Cargando…
Cancelar
Guardar