[xml/sgml-commit] r840 - in /packages/libxslt: ./ tags/1.1.21-1/ tags/1.1.21-1/debian/changelog tags/1.1.21-1/libxslt/xslt.c

glandium at users.alioth.debian.org glandium at users.alioth.debian.org
Thu Jul 26 21:01:50 UTC 2007


Author: glandium
Date: Thu Jul 26 21:01:49 2007
New Revision: 840

URL: http://svn.debian.org/wsvn/debian-xml-sgml/?sc=1&rev=840
Log:
 r1285 at namakemono:  mh | 2007-07-26 23:01:08 +0200
 Tagging 1.1.21-1

Added:
    packages/libxslt/tags/1.1.21-1/
      - copied from r838, packages/libxslt/trunk/
Modified:
    packages/libxslt/   (props changed)
    packages/libxslt/tags/1.1.21-1/debian/changelog
    packages/libxslt/tags/1.1.21-1/libxslt/xslt.c

Propchange: packages/libxslt/
------------------------------------------------------------------------------
--- svk:merge (original)
+++ svk:merge Thu Jul 26 21:01:49 2007
@@ -1,2 +1,2 @@
 85a06573-1206-0410-a182-ce9117885d71:/local/libxslt:284
-a066b643-3b0a-0410-a6ba-ed4cca522822:/local/libxslt:1284
+a066b643-3b0a-0410-a6ba-ed4cca522822:/local/libxslt:1285

Modified: packages/libxslt/tags/1.1.21-1/debian/changelog
URL: http://svn.debian.org/wsvn/debian-xml-sgml/packages/libxslt/tags/1.1.21-1/debian/changelog?rev=840&op=diff
==============================================================================
--- packages/libxslt/tags/1.1.21-1/debian/changelog (original)
+++ packages/libxslt/tags/1.1.21-1/debian/changelog Thu Jul 26 21:01:49 2007
@@ -1,11 +1,3 @@
-libxslt (1.1.21-2) unstable; urgency=low
-
-  * libxslt/xslt.c: Removed the exclude-result-prefix change making some
-    transformations crash. This reversal has also been done upstream.
-    Closes: #434300.
-
- -- Mike Hommey <glandium at debian.org>  Thu, 26 Jul 2007 22:14:38 +0200
-
 libxslt (1.1.21-1) unstable; urgency=low
 
   * New upstream release.

Modified: packages/libxslt/tags/1.1.21-1/libxslt/xslt.c
URL: http://svn.debian.org/wsvn/debian-xml-sgml/packages/libxslt/tags/1.1.21-1/libxslt/xslt.c?rev=840&op=diff
==============================================================================
--- packages/libxslt/tags/1.1.21-1/libxslt/xslt.c (original)
+++ packages/libxslt/tags/1.1.21-1/libxslt/xslt.c Thu Jul 26 21:01:49 2007
@@ -3469,7 +3469,7 @@
 	    }
 	    	     
 	    if ((cur->nsDef != NULL) && (style->exclPrefixNr > 0)) {
-		xmlNsPtr ns = cur->nsDef, prev = NULL, next;
+		xmlNsPtr ns = cur->nsDef, prev = NULL, next, rns;
 		xmlNodePtr root = NULL;
 		int i, moved;
 
@@ -3482,18 +3482,27 @@
 			    if ((ns->prefix != NULL) && 
 			        (xmlStrEqual(ns->href,
 					     style->exclPrefixTab[i]))) {
-				/*
-				 * Move the namespace definition on the root
-				 * element to avoid duplicating it without
-				 * loosing it.
-				 */
+				/* Remove the namespace from this node */
 				if (prev == NULL) {
 				    cur->nsDef = ns->next;
 				} else {
 				    prev->next = ns->next;
 				}
-				ns->next = root->nsDef;
-				root->nsDef = ns;
+				/*
+				 * If this prefix is not already present,
+				 * move the namespace definition on the root
+				 * element to avoid duplicating it without
+				 * loosing it.
+				 */
+				for (rns = root->nsDef; rns != NULL; rns = rns->next)
+				    if (xmlStrEqual(ns->prefix, rns->prefix))
+					break;
+				if (rns == NULL) {
+				    ns->next = root->nsDef;
+				    root->nsDef = ns;
+				}
+				else
+				    xmlFreeNs(ns);
 				moved = 1;
 				break;
 			    }




More information about the debian-xml-sgml-commit mailing list