| Index: third_party/libxslt/libxslt/templates.c
|
| ===================================================================
|
| --- third_party/libxslt/libxslt/templates.c (revision 39981)
|
| +++ third_party/libxslt/libxslt/templates.c (working copy)
|
| @@ -637,7 +637,7 @@
|
| last = last->next;
|
| } else {
|
| last = NULL;
|
| - }
|
| + }
|
| attr = attrs;
|
| do {
|
| /*
|
| @@ -719,20 +719,20 @@
|
| copyNs = NULL;
|
| }
|
| copy->ns = copyNs;
|
| -
|
| +
|
| /*
|
| * Set the value.
|
| - */
|
| + */
|
| text = xmlNewText(NULL);
|
| if (text != NULL) {
|
| copy->last = copy->children = text;
|
| text->parent = (xmlNodePtr) copy;
|
| text->doc = copy->doc;
|
| -
|
| +
|
| if (attr->psvi != NULL) {
|
| /*
|
| * Evaluate the Attribute Value Template.
|
| - */
|
| + */
|
| valueAVT = xsltEvalAVT(ctxt, attr->psvi, attr->parent);
|
| if (valueAVT == NULL) {
|
| /*
|
| @@ -743,7 +743,7 @@
|
| xsltTransformError(ctxt, NULL, attr->parent,
|
| "Internal error: Failed to evaluate the AVT "
|
| "of attribute '{%s}%s'.\n",
|
| - attr->ns->href, attr->name);
|
| + attr->ns->href, attr->name);
|
| } else {
|
| xsltTransformError(ctxt, NULL, attr->parent,
|
| "Internal error: Failed to evaluate the AVT "
|
| @@ -763,6 +763,9 @@
|
| } else {
|
| text->content = xmlStrdup(value);
|
| }
|
| + if ((copy != NULL) && (text != NULL) &&
|
| + (xmlIsID(copy->doc, copy->parent, copy)))
|
| + xmlAddID(NULL, copy->doc, text->content, copy);
|
| }
|
|
|
| next_attribute:
|
|
|