of true. (Tony)
- Fixed bug #31842 (*date('r') does not return RFC2822 conforming date string).
(Jani)
+- Fixed bug #31832 (SOAP encoding problem with complex types in WSDL mode with
+ multiple parts). (Dmitry)
- Fixed bug #31797 (exif_read_data() uses too low nesting limit). (Ilia)
- Fixed bug #31796 (readline completion handler does not handle empty return
values). (Ilia)
zend_hash_internal_pointer_reset_ex(Z_ARRVAL_P(ret), &pos);
while (zend_hash_get_current_data_ex(Z_ARRVAL_P(ret), (void **)&data, &pos) != FAILURE) {
- char *param_name;
+ char *param_name = NULL;
int param_name_len;
- long param_index;
+ long param_index = i;
zend_hash_get_current_key_ex(Z_ARRVAL_P(ret), ¶m_name, ¶m_name_len, ¶m_index, 0, &pos);
parameter = get_param(function, param_name, param_index, TRUE);
-
if (style == SOAP_RPC) {
param = serialize_parameter(parameter, *data, i, param_name, use, method TSRMLS_CC);
} else {
if (param_name != NULL) {
if (zend_hash_find(ht, param_name, strlen(param_name), (void **)&tmp) != FAILURE) {
return *tmp;
+ } else {
+ HashPosition pos;
+
+ zend_hash_internal_pointer_reset_ex(ht, &pos);
+ while (zend_hash_get_current_data_ex(ht, (void **)&tmp, &pos) != FAILURE) {
+ if ((*tmp)->paramName && strcmp(param_name, (*tmp)->paramName) == 0) {
+ return *tmp;
+ }
+ zend_hash_move_forward_ex(ht, &pos);
+ }
}
} else {
if (zend_hash_index_find(ht, index, (void **)&tmp) != FAILURE) {