tiny path fixes the "xmlConvertCRNGFile" function name from Kasimier

* rngparser.c: tiny path fixes the "xmlConvertCRNGFile" function name
  from Kasimier Buchcik
* xmlschemas.c: recursive xs:extension fix from taihei goi
Daniel
diff --git a/ChangeLog b/ChangeLog
index 08327b8..8f7530b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+Thu Apr 22 09:12:47 CEST 2004 Daniel Veillard <daniel@veillard.com>
+
+	* rngparser.c: tiny path fixes the "xmlConvertCRNGFile" function name
+	  from Kasimier Buchcik
+	* xmlschemas.c: recursive xs:extension fix from taihei goi
+
 Wed Apr 21 00:19:29 CEST 2004 Daniel Veillard <daniel@veillard.com>
 
 	* tree.c: small buffer resizing improvement from Morten Welinder
diff --git a/rngparser.c b/rngparser.c
index bfc9394..50d1de2 100644
--- a/rngparser.c
+++ b/rngparser.c
@@ -1510,7 +1510,7 @@
  *         NULL in case of error
  */
 xmlDocPtr
-xmlConvertCRNG(const char *URL, const char *encoding) {
+xmlConvertCRNGFile(const char *URL, const char *encoding) {
 }
 
 #ifdef STANDALONE
diff --git a/xmlschemas.c b/xmlschemas.c
index 25f9400..bdd7826 100644
--- a/xmlschemas.c
+++ b/xmlschemas.c
@@ -4238,7 +4238,16 @@
             if (type->baseType != NULL) {
                 xmlSchemaTypePtr subtypes;
 
+		if (type->recurse) { 
+		    xmlSchemaPErr(ctxt, type->node, 
+		                  XML_SCHEMAP_UNKNOWN_BASE_TYPE, 
+			    "Schemas: extension type %s is recursive\n", 
+				  type->name, NULL); 
+		    return; 
+                }
+                type->recurse = 1; 
                 xmlSchemaBuildAContentModel(type->baseType, ctxt, name);
+            	type->recurse = 0;
                 subtypes = type->subtypes;
                 while (subtypes != NULL) {
                     xmlSchemaBuildAContentModel(subtypes, ctxt, name);