size_t len, escaped;
char *buffer, *value, *end;
+ if (!nstate->attrbuffer)
+ return -1;
+
/* find the beginning of an attribute */
buffer = hwloc__nolibxml_import_ignore_spaces(nstate->attrbuffer);
namelen = strspn(buffer, "abcdefghijklmnopqrstuvwxyz_");
/* find attributes */
namelen = strspn(buffer, "abcdefghijklmnopqrstuvwxyz_");
- /* cannot be without attributes */
- assert(buffer[namelen] != '\0');
+
+ if (buffer[namelen] == '\0') {
+ /* no attributes */
+ nchildstate->attrbuffer = NULL;
+ return 1;
+ }
if (buffer[namelen] != ' ')
return -1;