applied patch from Adam Dickmeiss for mixed content added his regression

* xmlschemas.c: applied patch from Adam Dickmeiss for mixed content
* test/schemas/mixed* result/schemas/mixed*: added his regression
  tests too.
Daniel
diff --git a/xmlschemas.c b/xmlschemas.c
index f9e5153..2266f49 100644
--- a/xmlschemas.c
+++ b/xmlschemas.c
@@ -3581,6 +3581,7 @@
     xmlNodePtr child = NULL;
     const xmlChar *name;
     const xmlChar *oldcontainer;
+    const xmlChar *mixed;
     char buf[100];
 
     if ((ctxt == NULL) || (schema == NULL) || (node == NULL))
@@ -3602,6 +3603,11 @@
     if (type == NULL) {
         return (NULL);
     }
+
+    mixed = xmlSchemaGetProp(ctxt, node, "mixed");
+    if (mixed != NULL)
+	type->flags |= XML_SCHEMAS_TYPE_MIXED;
+
     type->node = node;
     type->type = XML_SCHEMA_TYPE_COMPLEX;
     type->id = xmlSchemaGetProp(ctxt, node, "id");
@@ -4491,6 +4497,10 @@
             case XML_SCHEMA_TYPE_COMPLEX:{
                     if (typeDecl->subtypes == NULL) {
                         typeDecl->contentType = XML_SCHEMA_CONTENT_EMPTY;
+
+                        if (typeDecl->flags & XML_SCHEMAS_TYPE_MIXED)
+                            typeDecl->contentType =
+                                XML_SCHEMA_CONTENT_MIXED;
                     } else {
                         if (typeDecl->flags & XML_SCHEMAS_TYPE_MIXED)
                             typeDecl->contentType =
@@ -4511,6 +4521,9 @@
             case XML_SCHEMA_TYPE_COMPLEX_CONTENT:{
                     if (typeDecl->subtypes == NULL) {
                         typeDecl->contentType = XML_SCHEMA_CONTENT_EMPTY;
+                        if (typeDecl->flags & XML_SCHEMAS_TYPE_MIXED)
+                            typeDecl->contentType =
+                                XML_SCHEMA_CONTENT_MIXED;
                     } else {
                         if (typeDecl->flags & XML_SCHEMAS_TYPE_MIXED)
                             typeDecl->contentType =