fixes #102920 about namespace handling in HTML output and section 16.2

* HTMLtree.c tree.c: fixes #102920 about namespace handling in
  HTML output and section 16.2 "HTML Output Method" of XSLT-1.0
* README: fixed a link
Daniel
diff --git a/ChangeLog b/ChangeLog
index 4ac38b6..3772e2c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Jan  9 14:16:38 CET 2003 Daniel Veillard <daniel@veillard.com>
+
+	* HTMLtree.c tree.c: fixes #102920 about namespace handling in
+	  HTML output and section 16.2 "HTML Output Method" of XSLT-1.0
+	* README: fixed a link
+
 Wed Jan  8 18:32:25 CET 2003 Daniel Veillard <daniel@veillard.com>
 
 	* configure.in doc/* NEWS: preparing 2.5.1 release
diff --git a/HTMLtree.c b/HTMLtree.c
index fe69b3d..94682bb 100644
--- a/HTMLtree.c
+++ b/HTMLtree.c
@@ -536,6 +536,7 @@
  *									*
  ************************************************************************/
 
+void xmlNsListDumpOutput(xmlOutputBufferPtr buf, xmlNsPtr cur);
 
 /**
  * htmlDtdDumpOutput:
@@ -761,10 +762,19 @@
     /*
      * Get specific HTML info for that node.
      */
-    info = htmlTagLookup(cur->name);
+    if (cur->ns == NULL)
+	info = htmlTagLookup(cur->name);
+    else
+	info = NULL;
 
     xmlOutputBufferWriteString(buf, "<");
+    if ((cur->ns != NULL) && (cur->ns->prefix != NULL)) {
+        xmlOutputBufferWriteString(buf, (const char *)cur->ns->prefix);
+	xmlOutputBufferWriteString(buf, ":");
+    }
     xmlOutputBufferWriteString(buf, (const char *)cur->name);
+    if (cur->nsDef)
+	xmlNsListDumpOutput(buf, cur->nsDef);
     if (cur->properties != NULL)
         htmlAttrListDumpOutput(buf, doc, cur->properties, encoding);
 
@@ -826,6 +836,10 @@
 	    xmlOutputBufferWriteString(buf, "\n");
     }
     xmlOutputBufferWriteString(buf, "</");
+    if ((cur->ns != NULL) && (cur->ns->prefix != NULL)) {
+        xmlOutputBufferWriteString(buf, (const char *)cur->ns->prefix);
+	xmlOutputBufferWriteString(buf, ":");
+    }
     xmlOutputBufferWriteString(buf, (const char *)cur->name);
     xmlOutputBufferWriteString(buf, ">");
     if ((format) && (info != NULL) && (!info->isinline) &&
diff --git a/README b/README
index a1eb3e3..f521497 100644
--- a/README
+++ b/README
@@ -7,7 +7,7 @@
 This code is released under the MIT Licence see the Copyright file.
 
 To report bugs, follow the instructions at: 
-  http://xmlsoft.org/XSLT/bug.html
+  http://xmlsoft.org/bugs.html
 
 A mailing-list xml@gnome.org is available, to subscribe:
     http://mail.gnome.org/mailman/listinfo/xml
diff --git a/tree.c b/tree.c
index 4134f59..bae197a 100644
--- a/tree.c
+++ b/tree.c
@@ -6322,6 +6322,8 @@
 xmlNodeDumpOutputInternal(xmlOutputBufferPtr buf, xmlDocPtr doc,
 	    xmlNodePtr cur, int level, int format, const char *encoding);
 
+void xmlNsListDumpOutput(xmlOutputBufferPtr buf, xmlNsPtr cur);
+
 /**
  * xmlNsDumpOutput:
  * @buf:  the XML buffer output
@@ -6362,7 +6364,7 @@
  * Dump a list of local Namespace definitions.
  * Should be called in the context of attributes dumps.
  */
-static void
+void
 xmlNsListDumpOutput(xmlOutputBufferPtr buf, xmlNsPtr cur) {
     while (cur != NULL) {
         xmlNsDumpOutput(buf, cur);