]> granicus.if.org Git - php/commitdiff
Allow <element>s with same names
authorDmitry Stogov <dmitry@php.net>
Tue, 27 Jan 2004 12:07:57 +0000 (12:07 +0000)
committerDmitry Stogov <dmitry@php.net>
Tue, 27 Jan 2004 12:07:57 +0000 (12:07 +0000)
ext/soap/php_schema.c

index 041658bcc6c965334404617bf918bf0b0a897ed4..d2ab5ffb2f16fbe4338bdcfa561249d451597510 100644 (file)
@@ -1547,7 +1547,11 @@ static int schema_element(sdlPtr sdl, xmlAttrPtr tsn, xmlNodePtr element, sdlTyp
 
                smart_str_0(&key);
                if (zend_hash_add(addHash, key.c, key.len + 1, &newType, sizeof(sdlTypePtr), NULL) != SUCCESS) {
-                       php_error(E_ERROR, "Error parsing schema (element '%s' already defined)",key.c);
+                       if (cur_type == NULL) {
+                               php_error(E_ERROR, "Error parsing schema (element '%s' already defined)",key.c);
+                       } else {
+                               zend_hash_next_index_insert(addHash, &newType, sizeof(sdlTypePtr), NULL);
+                       }
                }
                smart_str_free(&key);