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

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

Issue 1848793005: Roll libxslt to 891681e3e948f31732229f53cb6db7215f740fc7 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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
« no previous file with comments | « third_party/libxslt/libxslt/transform.c ('k') | third_party/libxslt/libxslt/win32config.h » ('j') | 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 * variables.c: Implementation of the variable storage and lookup 2 * variables.c: Implementation of the variable storage and lookup
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 */
(...skipping 1427 matching lines...) Expand 10 before | Expand all | Expand 10 after
1438 style = ctxt->style; 1438 style = ctxt->style;
1439 1439
1440 #ifdef WITH_XSLT_DEBUG_VARIABLE 1440 #ifdef WITH_XSLT_DEBUG_VARIABLE
1441 XSLT_TRACE(ctxt,XSLT_TRACE_VARIABLES,xsltGenericDebug(xsltGenericDebugContex t, 1441 XSLT_TRACE(ctxt,XSLT_TRACE_VARIABLES,xsltGenericDebug(xsltGenericDebugContex t,
1442 "Evaluating user parameter %s=%s\n", name, value)); 1442 "Evaluating user parameter %s=%s\n", name, value));
1443 #endif 1443 #endif
1444 1444
1445 /* 1445 /*
1446 * Name lookup 1446 * Name lookup
1447 */ 1447 */
1448 href = NULL;
1448 1449
1449 name = xsltSplitQName(ctxt->dict, name, &prefix); 1450 if (name[0] == '{') {
1450 href = NULL; 1451 int len = 0;
1451 if (prefix != NULL) {
1452 » xmlNsPtr ns;
1453 1452
1454 » ns = xmlSearchNs(style->doc, xmlDocGetRootElement(style->doc), 1453 while ((name[len] != 0) && (name[len] != '}')) len++;
1455 » » » prefix); 1454 if (name[len] == 0) {
1456 » if (ns == NULL) { 1455 xsltTransformError(ctxt, style, NULL,
1457 » xsltTransformError(ctxt, style, NULL, 1456 "user param : malformed parameter name : %s\n", name);
1458 » "user param : no namespace bound to prefix %s\n", prefix); 1457 } else {
1459 » href = NULL; 1458 href = xmlDictLookup(ctxt->dict, &name[1], len-1);
1460 » } else { 1459 name = xmlDictLookup(ctxt->dict, &name[len + 1], -1);
1461 » href = ns->href; 1460 }
1462 » } 1461 }
1462 else {
1463 name = xsltSplitQName(ctxt->dict, name, &prefix);
1464 if (prefix != NULL) {
1465 xmlNsPtr ns;
1466
1467 ns = xmlSearchNs(style->doc, xmlDocGetRootElement(style->doc),
1468 prefix);
1469 if (ns == NULL) {
1470 xsltTransformError(ctxt, style, NULL,
1471 "user param : no namespace bound to prefix %s\n", prefix);
1472 href = NULL;
1473 } else {
1474 href = ns->href;
1475 }
1476 }
1463 } 1477 }
1464 1478
1465 if (name == NULL) 1479 if (name == NULL)
1466 return (-1); 1480 return (-1);
1467 1481
1468 res_ptr = xmlHashLookup2(ctxt->globalVars, name, href); 1482 res_ptr = xmlHashLookup2(ctxt->globalVars, name, href);
1469 if (res_ptr != 0) { 1483 if (res_ptr != 0) {
1470 xsltTransformError(ctxt, style, NULL, 1484 xsltTransformError(ctxt, style, NULL,
1471 "Global parameter %s already defined\n", name); 1485 "Global parameter %s already defined\n", name);
1472 } 1486 }
(...skipping 839 matching lines...) Expand 10 before | Expand all | Expand 10 after
2312 #ifdef WITH_XSLT_DEBUG_VARIABLE 2326 #ifdef WITH_XSLT_DEBUG_VARIABLE
2313 XSLT_TRACE(tctxt,XSLT_TRACE_VARIABLES,xsltGenericDebug(xsltGenericDebugC ontext, 2327 XSLT_TRACE(tctxt,XSLT_TRACE_VARIABLES,xsltGenericDebug(xsltGenericDebugC ontext,
2314 "found variable '%s'\n", name)); 2328 "found variable '%s'\n", name));
2315 #endif 2329 #endif
2316 } 2330 }
2317 2331
2318 return(valueObj); 2332 return(valueObj);
2319 } 2333 }
2320 2334
2321 2335
OLDNEW
« no previous file with comments | « third_party/libxslt/libxslt/transform.c ('k') | third_party/libxslt/libxslt/win32config.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698