| OLD | NEW |
| 1 /* | 1 /* |
| 2 * dynamic.c: Implementation of the EXSLT -- Dynamic module | 2 * dynamic.c: Implementation of the EXSLT -- Dynamic module |
| 3 * | 3 * |
| 4 * References: | 4 * References: |
| 5 * http://www.exslt.org/dyn/dyn.html | 5 * http://www.exslt.org/dyn/dyn.html |
| 6 * | 6 * |
| 7 * See Copyright for the status of this software. | 7 * See Copyright for the status of this software. |
| 8 * | 8 * |
| 9 * Authors: | 9 * Authors: |
| 10 * Mark Vakoc <mark_vakoc@jdedwards.com> | 10 * Mark Vakoc <mark_vakoc@jdedwards.com> |
| (...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 209 boolval ? "true" : "")); | 209 boolval ? "true" : "")); |
| 210 if (cur != NULL) { | 210 if (cur != NULL) { |
| 211 cur->ns = | 211 cur->ns = |
| 212 xmlNewNs(cur, | 212 xmlNewNs(cur, |
| 213 BAD_CAST | 213 BAD_CAST |
| 214 "http://exslt.org/common", | 214 "http://exslt.org/common", |
| 215 BAD_CAST "exsl"); | 215 BAD_CAST "exsl"); |
| 216 xmlXPathNodeSetAddUnique(ret->nodesetval, | 216 xmlXPathNodeSetAddUnique(ret->nodesetval, |
| 217 cur); | 217 cur); |
| 218 } | 218 } |
| 219 xsltExtensionInstructionResultRegister(tctxt, ret); | |
| 220 } | 219 } |
| 221 break; | 220 break; |
| 222 case XPATH_NUMBER: | 221 case XPATH_NUMBER: |
| 223 if (container != NULL) { | 222 if (container != NULL) { |
| 224 xmlChar *val = | 223 xmlChar *val = |
| 225 xmlXPathCastNumberToString(subResult-> | 224 xmlXPathCastNumberToString(subResult-> |
| 226 floatval); | 225 floatval); |
| 227 xmlNodePtr cur = | 226 xmlNodePtr cur = |
| 228 xmlNewChild((xmlNodePtr) container, NULL, | 227 xmlNewChild((xmlNodePtr) container, NULL, |
| 229 BAD_CAST "number", val); | 228 BAD_CAST "number", val); |
| 230 if (val != NULL) | 229 if (val != NULL) |
| 231 xmlFree(val); | 230 xmlFree(val); |
| 232 | 231 |
| 233 if (cur != NULL) { | 232 if (cur != NULL) { |
| 234 cur->ns = | 233 cur->ns = |
| 235 xmlNewNs(cur, | 234 xmlNewNs(cur, |
| 236 BAD_CAST | 235 BAD_CAST |
| 237 "http://exslt.org/common", | 236 "http://exslt.org/common", |
| 238 BAD_CAST "exsl"); | 237 BAD_CAST "exsl"); |
| 239 xmlXPathNodeSetAddUnique(ret->nodesetval, | 238 xmlXPathNodeSetAddUnique(ret->nodesetval, |
| 240 cur); | 239 cur); |
| 241 } | 240 } |
| 242 xsltExtensionInstructionResultRegister(tctxt, ret); | |
| 243 } | 241 } |
| 244 break; | 242 break; |
| 245 case XPATH_STRING: | 243 case XPATH_STRING: |
| 246 if (container != NULL) { | 244 if (container != NULL) { |
| 247 xmlNodePtr cur = | 245 xmlNodePtr cur = |
| 248 xmlNewChild((xmlNodePtr) container, NULL, | 246 xmlNewChild((xmlNodePtr) container, NULL, |
| 249 BAD_CAST "string", | 247 BAD_CAST "string", |
| 250 subResult->stringval); | 248 subResult->stringval); |
| 251 if (cur != NULL) { | 249 if (cur != NULL) { |
| 252 cur->ns = | 250 cur->ns = |
| 253 xmlNewNs(cur, | 251 xmlNewNs(cur, |
| 254 BAD_CAST | 252 BAD_CAST |
| 255 "http://exslt.org/common", | 253 "http://exslt.org/common", |
| 256 BAD_CAST "exsl"); | 254 BAD_CAST "exsl"); |
| 257 xmlXPathNodeSetAddUnique(ret->nodesetval, | 255 xmlXPathNodeSetAddUnique(ret->nodesetval, |
| 258 cur); | 256 cur); |
| 259 } | 257 } |
| 260 xsltExtensionInstructionResultRegister(tctxt, ret); | |
| 261 } | 258 } |
| 262 break; | 259 break; |
| 263 default: | 260 default: |
| 264 break; | 261 break; |
| 265 } | 262 } |
| 266 xmlXPathFreeObject(subResult); | 263 xmlXPathFreeObject(subResult); |
| 267 } | 264 } |
| 268 } | 265 } |
| 269 } | 266 } |
| 270 ctxt->context->doc = oldDoc; | 267 ctxt->context->doc = oldDoc; |
| (...skipping 24 matching lines...) Expand all Loading... |
| 295 void | 292 void |
| 296 exsltDynRegister (void) { | 293 exsltDynRegister (void) { |
| 297 xsltRegisterExtModuleFunction ((const xmlChar *) "evaluate", | 294 xsltRegisterExtModuleFunction ((const xmlChar *) "evaluate", |
| 298 EXSLT_DYNAMIC_NAMESPACE, | 295 EXSLT_DYNAMIC_NAMESPACE, |
| 299 exsltDynEvaluateFunction); | 296 exsltDynEvaluateFunction); |
| 300 xsltRegisterExtModuleFunction ((const xmlChar *) "map", | 297 xsltRegisterExtModuleFunction ((const xmlChar *) "map", |
| 301 EXSLT_DYNAMIC_NAMESPACE, | 298 EXSLT_DYNAMIC_NAMESPACE, |
| 302 exsltDynMapFunction); | 299 exsltDynMapFunction); |
| 303 | 300 |
| 304 } | 301 } |
| OLD | NEW |