From: Ilya M. <m_...@us...> - 2003-05-21 10:30:18
|
Update of /cvsroot/perl-xml/XML-LibXML-XPathContext In directory sc8-pr-cvs1:/tmp/cvs-serv14178 Modified Files: XPathContext.xs Log Message: Simplify code of getContextNode() Index: XPathContext.xs =================================================================== RCS file: /cvsroot/perl-xml/XML-LibXML-XPathContext/XPathContext.xs,v retrieving revision 1.33 retrieving revision 1.34 diff -u -d -r1.33 -r1.34 --- XPathContext.xs 21 May 2003 09:03:00 -0000 1.33 +++ XPathContext.xs 21 May 2003 10:30:15 -0000 1.34 @@ -413,9 +413,9 @@ xmlNodePtr node = xpc_PmmSvNode(XPathContextDATA(ctxt)->node); if (node != NULL) { - ctxt->doc = node->doc; + ctxt->doc = node->doc; } else { - ctxt->doc = NULL; + ctxt->doc = NULL; } ctxt->node = node; @@ -508,14 +508,10 @@ if ( ctxt == NULL ) { croak("XPathContext: missing xpath context"); } - xpc_LibXML_configure_xpathcontext(ctxt); CODE: - if (ctxt->node != NULL) { - RETVAL = xpc_PmmNodeToSv(ctxt->node, - xpc_PmmOWNERPO( xpc_PmmPROXYNODE(ctxt->node))); - + if(XPathContextDATA(ctxt)->node != NULL) { + RETVAL = newSVsv(XPathContextDATA(ctxt)->node); } else { - /* croak("XPathContext: lost context node"); */ RETVAL = &PL_sv_undef; } OUTPUT: @@ -531,13 +527,13 @@ croak("XPathContext: missing xpath context"); } PPCODE: - if (XPathContextDATA(ctxt)->node && SvOK(XPathContextDATA(ctxt)->node)) { + if (XPathContextDATA(ctxt)->node != NULL) { SvREFCNT_dec(XPathContextDATA(ctxt)->node); } if (SvOK(pnode)) { - XPathContextDATA(ctxt)->node = newSVsv(pnode); + XPathContextDATA(ctxt)->node = newSVsv(pnode); } else { - XPathContextDATA(ctxt)->node = &PL_sv_undef; + XPathContextDATA(ctxt)->node = NULL; } void |