Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(105)

Side by Side Diff: third_party/libxslt/libxslt/templates.c

Issue 10919019: Fix dictionary string usage. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « third_party/libxslt/README.chromium ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * templates.c: Implementation of the template processing 2 * templates.c: Implementation of the template processing
3 * 3 *
4 * Reference: 4 * Reference:
5 * http://www.w3.org/TR/1999/REC-xslt-19991116 5 * http://www.w3.org/TR/1999/REC-xslt-19991116
6 * 6 *
7 * See Copyright for the status of this software. 7 * See Copyright for the status of this software.
8 * 8 *
9 * daniel@veillard.com 9 * daniel@veillard.com
10 */ 10 */
11 11
12 #define IN_LIBXSLT 12 #define IN_LIBXSLT
13 #include "libxslt.h" 13 #include "libxslt.h"
14 14
15 #include <string.h> 15 #include <string.h>
16 16
17 #include <libxml/xmlmemory.h> 17 #include <libxml/xmlmemory.h>
18 #include <libxml/globals.h> 18 #include <libxml/globals.h>
19 #include <libxml/xmlerror.h> 19 #include <libxml/xmlerror.h>
20 #include <libxml/tree.h> 20 #include <libxml/tree.h>
21 #include <libxml/dict.h>
21 #include <libxml/xpathInternals.h> 22 #include <libxml/xpathInternals.h>
22 #include <libxml/parserInternals.h> 23 #include <libxml/parserInternals.h>
23 #include "xslt.h" 24 #include "xslt.h"
24 #include "xsltInternals.h" 25 #include "xsltInternals.h"
25 #include "xsltutils.h" 26 #include "xsltutils.h"
26 #include "variables.h" 27 #include "variables.h"
27 #include "functions.h" 28 #include "functions.h"
28 #include "templates.h" 29 #include "templates.h"
29 #include "transform.h" 30 #include "transform.h"
30 #include "namespaces.h" 31 #include "namespaces.h"
(...skipping 534 matching lines...) Expand 10 before | Expand all | Expand 10 after
565 "Internal error: Failed to evaluate the AVT " 566 "Internal error: Failed to evaluate the AVT "
566 "of attribute '%s'.\n", 567 "of attribute '%s'.\n",
567 attr->name); 568 attr->name);
568 } 569 }
569 text->content = xmlStrdup(BAD_CAST ""); 570 text->content = xmlStrdup(BAD_CAST "");
570 } else { 571 } else {
571 text->content = val; 572 text->content = val;
572 } 573 }
573 } else if ((ctxt->internalized) && (target != NULL) && 574 } else if ((ctxt->internalized) && (target != NULL) &&
574 (target->doc != NULL) && 575 (target->doc != NULL) &&
575 » » (target->doc->dict == ctxt->dict)) { 576 » » (target->doc->dict == ctxt->dict) &&
577 » » xmlDictOwns(ctxt->dict, value)) {
576 text->content = (xmlChar *) value; 578 text->content = (xmlChar *) value;
577 } else { 579 } else {
578 text->content = xmlStrdup(value); 580 text->content = xmlStrdup(value);
579 } 581 }
580 } 582 }
581 } else { 583 } else {
582 if (attr->ns) { 584 if (attr->ns) {
583 xsltTransformError(ctxt, NULL, attr->parent, 585 xsltTransformError(ctxt, NULL, attr->parent,
584 "Internal error: Failed to create attribute '{%s}%s'.\n", 586 "Internal error: Failed to create attribute '{%s}%s'.\n",
585 attr->ns->href, attr->name); 587 attr->ns->href, attr->name);
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
750 "of attribute '%s'.\n", 752 "of attribute '%s'.\n",
751 attr->name); 753 attr->name);
752 } 754 }
753 text->content = xmlStrdup(BAD_CAST ""); 755 text->content = xmlStrdup(BAD_CAST "");
754 goto error; 756 goto error;
755 } else { 757 } else {
756 text->content = valueAVT; 758 text->content = valueAVT;
757 } 759 }
758 } else if ((ctxt->internalized) && 760 } else if ((ctxt->internalized) &&
759 (target->doc != NULL) && 761 (target->doc != NULL) &&
760 » » (target->doc->dict == ctxt->dict)) 762 » » (target->doc->dict == ctxt->dict) &&
763 » » xmlDictOwns(ctxt->dict, value))
761 { 764 {
762 text->content = (xmlChar *) value; 765 text->content = (xmlChar *) value;
763 } else { 766 } else {
764 text->content = xmlStrdup(value); 767 text->content = xmlStrdup(value);
765 } 768 }
766 if ((copy != NULL) && (text != NULL) && 769 if ((copy != NULL) && (text != NULL) &&
767 (xmlIsID(copy->doc, copy->parent, copy))) 770 (xmlIsID(copy->doc, copy->parent, copy)))
768 xmlAddID(NULL, copy->doc, text->content, copy); 771 xmlAddID(NULL, copy->doc, text->content, copy);
769 } 772 }
770 773
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
816 */ 819 */
817 xmlNodePtr * 820 xmlNodePtr *
818 xsltTemplateProcess(xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED, xmlNodePtr no de) { 821 xsltTemplateProcess(xsltTransformContextPtr ctxt ATTRIBUTE_UNUSED, xmlNodePtr no de) {
819 if (node == NULL) 822 if (node == NULL)
820 return(NULL); 823 return(NULL);
821 824
822 return(0); 825 return(0);
823 } 826 }
824 827
825 828
OLDNEW
« no previous file with comments | « third_party/libxslt/README.chromium ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698