cvs: php-src(PHP_5_1) / NEWS /ext/soap php_encoding.c php_schema.c /ext/soap/tests/bugs bug35142.phpt bug35142.wsdl
| From: | Dmitry Stogov | Date: | Tue, 08 Nov 2005 08:30:21 +0000 |
| Subject: | cvs: php-src(PHP_5_1) / NEWS /ext/soap php_encoding.c php_schema.c /ext/soap/tests/bugs bug35142.phpt bug35142.wsdl | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-35050@lists.php.net to get a copy of this message | ||
dmitry Tue Nov 8 03:30:21 2005 EDT
Added files: (Branch: PHP_5_1)
/php-src/ext/soap/tests/bugs bug35142.phpt bug35142.wsdl
Modified files:
/php-src NEWS
/php-src/ext/soap php_encoding.c php_schema.c
Log:
Fixed bug #35142 (SOAP Client/Server Complex Object Support)
http://cvs.php.net/diff.php/php-src/NEWS?r1=1.2027.2.180&r2=1.2027.2.181&ty=u
Index: php-src/NEWS
diff -u php-src/NEWS:1.2027.2.180 php-src/NEWS:1.2027.2.181
--- php-src/NEWS:1.2027.2.180 Mon Nov 7 11:53:15 2005
+++ php-src/NEWS Tue Nov 8 03:30:08 2005
@@ -2,6 +2,7 @@
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
?? Nov 2005, PHP 5.1
- Fixed initializing and argument checking for posix_mknod(). (Derick)
+- Fixed bug #35142 (SOAP Client/Server Complex Object Support). (Dmitry)
- Fixed bug #35135 (PDOStatment without related PDO object may crash). (Ilia)
- Fixed bug #35091 (SoapClient leaks memory). (Dmitry)
- Fixed bug #35078 (configure does not find ldap_start_tls_s). (Jani)
http://cvs.php.net/diff.php/php-src/ext/soap/php_encoding.c?r1=1.103.2.10&r2=1.103.2.11&ty=u
Index: php-src/ext/soap/php_encoding.c
diff -u php-src/ext/soap/php_encoding.c:1.103.2.10 php-src/ext/soap/php_encoding.c:1.103.2.11
--- php-src/ext/soap/php_encoding.c:1.103.2.10 Tue Nov 1 06:11:34 2005
+++ php-src/ext/soap/php_encoding.c Tue Nov 8 03:30:16 2005
@@ -17,7 +17,7 @@
| Dmitry Stogov <dmitry@zend.com> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_encoding.c,v 1.103.2.10 2005/11/01 11:11:34 dmitry Exp $ */
+/* $Id: php_encoding.c,v 1.103.2.11 2005/11/08 08:30:16 dmitry Exp $ */
#include <time.h>
@@ -1223,6 +1223,10 @@
unset_zval_property(ret, "any" TSRMLS_CC);
redo_any = 1;
}
+ if (Z_TYPE_P(ret) == IS_OBJECT && ce != ZEND_STANDARD_CLASS_DEF_PTR) {
+ zend_object *zobj = zend_objects_get_address(ret TSRMLS_CC);
+ zobj->ce = ce;
+ }
} else {
zval *base;
http://cvs.php.net/diff.php/php-src/ext/soap/php_schema.c?r1=1.58.2.1&r2=1.58.2.2&ty=u
Index: php-src/ext/soap/php_schema.c
diff -u php-src/ext/soap/php_schema.c:1.58.2.1 php-src/ext/soap/php_schema.c:1.58.2.2
--- php-src/ext/soap/php_schema.c:1.58.2.1 Wed Sep 28 07:24:18 2005
+++ php-src/ext/soap/php_schema.c Tue Nov 8 03:30:17 2005
@@ -17,7 +17,7 @@
| Dmitry Stogov <dmitry@zend.com> |
+----------------------------------------------------------------------+
*/
-/* $Id: php_schema.c,v 1.58.2.1 2005/09/28 11:24:18 dmitry Exp $ */
+/* $Id: php_schema.c,v 1.58.2.2 2005/11/08 08:30:17 dmitry Exp $ */
#include "php_soap.h"
#include "libxml/uri.h"
@@ -2192,9 +2192,25 @@
}
break;
}
- case XSD_CONTENT_SEQUENCE:
- case XSD_CONTENT_ALL:
case XSD_CONTENT_CHOICE: {
+ if (model->max_occurs != 1) {
+ HashPosition pos;
+ sdlContentModelPtr *tmp;
+
+ zend_hash_internal_pointer_reset_ex(model->u.content, &pos);
+ while (zend_hash_get_current_data_ex(model->u.content, (void**)&tmp, &pos) ==
SUCCESS) {
+ (*tmp)->min_occurs = 0;
+ (*tmp)->max_occurs = model->max_occurs;
+ zend_hash_move_forward_ex(model->u.content, &pos);
+ }
+
+ model->kind = XSD_CONTENT_ALL;
+ model->min_occurs = 1;
+ model->max_occurs = 1;
+ }
+ }
+ case XSD_CONTENT_SEQUENCE:
+ case XSD_CONTENT_ALL: {
sdlContentModelPtr *tmp;
zend_hash_internal_pointer_reset(model->u.content);
http://cvs.php.net/co.php/php-src/ext/soap/tests/bugs/bug35142.phpt?r=1.1&p=1
Index: php-src/ext/soap/tests/bugs/bug35142.phpt
+++ php-src/ext/soap/tests/bugs/bug35142.phpt
http://cvs.php.net/co.php/php-src/ext/soap/tests/bugs/bug35142.wsdl?r=1.1&p=1
Index: php-src/ext/soap/tests/bugs/bug35142.wsdl
+++ php-src/ext/soap/tests/bugs/bug35142.wsdl