felipe Sun Sep 7 02:58:50 2008 UTC Modified files: (Branch: PHP_5_3) /php-src/ext/soap soap.c /php-src/ext/soap/tests/bugs bug31755.phpt Log: - MFH: Removed the doubled error message (the error level is no longer E_ERROR)
http://cvs.php.net/viewvc.cgi/php-src/ext/soap/soap.c?r1=1.156.2.28.2.30.2.19&r2=1.156.2.28.2.30.2.20&diff_format=u Index: php-src/ext/soap/soap.c diff -u php-src/ext/soap/soap.c:1.156.2.28.2.30.2.19 php-src/ext/soap/soap.c:1.156.2.28.2.30.2.20 --- php-src/ext/soap/soap.c:1.156.2.28.2.30.2.19 Mon Sep 1 14:55:30 2008 +++ php-src/ext/soap/soap.c Sun Sep 7 02:58:50 2008 @@ -17,7 +17,7 @@ | Dmitry Stogov <[EMAIL PROTECTED]> | +----------------------------------------------------------------------+ */ -/* $Id: soap.c,v 1.156.2.28.2.30.2.19 2008/09/01 14:55:30 dmitry Exp $ */ +/* $Id: soap.c,v 1.156.2.28.2.30.2.20 2008/09/07 02:58:50 felipe Exp $ */ #ifdef HAVE_CONFIG_H #include "config.h" @@ -887,10 +887,10 @@ int name_length; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "zs", &data, &name, &name_length) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } if (name_length == 0) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters. Invalid parameter name."); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameter name"); } #ifndef ZEND_ENGINE_2 @@ -912,13 +912,13 @@ zend_bool must_understand = 0; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ss|zbz", &ns, &ns_len, &name, &name_len, &data, &must_understand, &actor) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } if (ns_len == 0) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters. Invalid namespace."); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid namespace"); } if (name_len == 0) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters. Invalid header name."); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid header name"); } add_property_stringl(this_ptr, "namespace", ns, ns_len, 1); @@ -939,7 +939,7 @@ } else if (Z_TYPE_P(actor) == IS_STRING && Z_STRLEN_P(actor) > 0) { add_property_stringl(this_ptr, "actor", Z_STRVAL_P(actor), Z_STRLEN_P(actor), 1); } else { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters. Invalid actor."); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid actor"); } } @@ -956,8 +956,9 @@ &fault_string, &fault_string_len, &fault_actor, &fault_actor_len, &details, &name, &name_len, &headerfault) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } + if (Z_TYPE_P(code) == IS_NULL) { } else if (Z_TYPE_P(code) == IS_STRING) { fault_code = Z_STRVAL_P(code); @@ -974,13 +975,13 @@ fault_code = Z_STRVAL_PP(t_code); fault_code_len = Z_STRLEN_PP(t_code); } else { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters. Invalid fault code."); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid fault code"); } } else { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters. Invalid fault code."); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid fault code"); } if (fault_code != NULL && fault_code_len == 0) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters. Invalid fault code."); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid fault code"); } if (name != NULL && name_len == 0) { name = NULL; @@ -1048,7 +1049,7 @@ int stype_len, ns_len, name_len, namens_len; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z!z|ssss", &data, &type, &stype, &stype_len, &ns, &ns_len, &name, &name_len, &namens, &namens_len) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } if (Z_TYPE_P(type) == IS_NULL) { @@ -1205,7 +1206,7 @@ PHP_METHOD(SoapServer, SoapServer) { soapServicePtr service; - zval *wsdl, *options = NULL; + zval *wsdl = NULL, *options = NULL; int ret; int version = SOAP_1_1; long cache_wsdl; @@ -1213,15 +1214,8 @@ SOAP_SERVER_BEGIN_CODE(); - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z|a", &wsdl, &options) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); - } - - if (Z_TYPE_P(wsdl) == IS_STRING) { - } else if (Z_TYPE_P(wsdl) == IS_NULL) { - wsdl = NULL; - } else { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z!|a", &wsdl, &options) == FAILURE) { + return; } service = emalloc(sizeof(soapService)); @@ -1245,7 +1239,7 @@ Z_TYPE_PP(tmp) == IS_STRING) { service->uri = estrndup(Z_STRVAL_PP(tmp), Z_STRLEN_PP(tmp)); } else if (wsdl == NULL) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid arguments. 'uri' option is required in nonWSDL mode."); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "'uri' option is required in nonWSDL mode"); return; } @@ -1260,7 +1254,7 @@ encoding = xmlFindCharEncodingHandler(Z_STRVAL_PP(tmp)); if (encoding == NULL) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid arguments. Invalid 'encoding' option - '%s'.", Z_STRVAL_PP(tmp)); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid 'encoding' option - '%s'", Z_STRVAL_PP(tmp)); } else { service->encoding = encoding; } @@ -1297,7 +1291,7 @@ } } else if (wsdl == NULL) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid arguments. 'uri' option is required in nonWSDL mode."); + php_error_docref(NULL TSRMLS_CC, E_ERROR, "'uri' option is required in nonWSDL mode"); } service->version = version; @@ -1430,7 +1424,7 @@ FETCH_THIS_SERVICE(service); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "o", &obj) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } service->type = SOAP_OBJECT; @@ -1507,7 +1501,7 @@ FETCH_THIS_SERVICE(service); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z", &function_name) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } /* TODO: could use zend_is_callable here */ @@ -1613,8 +1607,9 @@ FETCH_THIS_SERVICE(service); SOAP_GLOBAL(soap_version) = service->version; + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s", &arg, &arg_len) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } if (SG(request_info).request_method && @@ -2145,7 +2140,7 @@ if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "ss|szs", &code, &code_len, &string, &string_len, &actor, &actor_len, &details, &name, &name_len) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } soap_server_fault(code, string, actor, details, name TSRMLS_CC); @@ -2168,7 +2163,7 @@ } if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "O", &fault, soap_header_class_entry) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } p = service->soap_headers_ptr; @@ -2495,7 +2490,6 @@ SOAP_CLIENT_BEGIN_CODE(); if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "z|a", &wsdl, &options) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); return; } @@ -3018,30 +3012,26 @@ HashPosition pos; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sa|zzz", + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "sa|a!zz", &function, &function_len, &args, &options, &headers, &output_headers) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } if (options) { - if (Z_TYPE_P(options) == IS_ARRAY) { - HashTable *ht = Z_ARRVAL_P(options); - if (zend_hash_find(ht, "location", sizeof("location"), (void**)&tmp) == SUCCESS && - Z_TYPE_PP(tmp) == IS_STRING) { - location = Z_STRVAL_PP(tmp); - } + HashTable *ht = Z_ARRVAL_P(options); + if (zend_hash_find(ht, "location", sizeof("location"), (void**)&tmp) == SUCCESS && + Z_TYPE_PP(tmp) == IS_STRING) { + location = Z_STRVAL_PP(tmp); + } - if (zend_hash_find(ht, "soapaction", sizeof("soapaction"), (void**)&tmp) == SUCCESS && - Z_TYPE_PP(tmp) == IS_STRING) { - soap_action = Z_STRVAL_PP(tmp); - } + if (zend_hash_find(ht, "soapaction", sizeof("soapaction"), (void**)&tmp) == SUCCESS && + Z_TYPE_PP(tmp) == IS_STRING) { + soap_action = Z_STRVAL_PP(tmp); + } - if (zend_hash_find(ht, "uri", sizeof("uri"), (void**)&tmp) == SUCCESS && - Z_TYPE_PP(tmp) == IS_STRING) { - uri = Z_STRVAL_PP(tmp); - } - } else if (Z_TYPE_P(options) != IS_NULL) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "first parameter must be string or null"); + if (zend_hash_find(ht, "uri", sizeof("uri"), (void**)&tmp) == SUCCESS && + Z_TYPE_PP(tmp) == IS_STRING) { + uri = Z_STRVAL_PP(tmp); } } @@ -3259,7 +3249,7 @@ &location, &location_size, &action, &action_size, &version, &one_way) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); + return; } if (SOAP_GLOBAL(features) & SOAP_WAIT_ONE_WAY_CALLS) { one_way = 0; @@ -3288,10 +3278,8 @@ int name_len, val_len; zval **cookies; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|s", - &name, &name_len, &val, &val_len) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); - RETURN_NULL(); + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|s", &name, &name_len, &val, &val_len) == FAILURE) { + return; } if (val == NULL) { @@ -3326,8 +3314,7 @@ zval *headers = NULL; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|z", &headers) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); - RETURN_NULL(); + return; } if (headers == NULL || Z_TYPE_P(headers) == IS_NULL) { @@ -3369,17 +3356,16 @@ int location_len; zval **tmp; - if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s", - &location, &location_len) == FAILURE) { - php_error_docref(NULL TSRMLS_CC, E_ERROR, "Invalid parameters"); - RETURN_NULL(); + if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|s", &location, &location_len) == FAILURE) { + return; } - if (zend_hash_find(Z_OBJPROP_P(this_ptr), "location", sizeof("location"),(void **) &tmp) == SUCCESS && - Z_TYPE_PP(tmp) == IS_STRING) { - RETVAL_STRINGL(Z_STRVAL_PP(tmp), Z_STRLEN_PP(tmp), 1); + + if (zend_hash_find(Z_OBJPROP_P(this_ptr), "location", sizeof("location"),(void **) &tmp) == SUCCESS && Z_TYPE_PP(tmp) == IS_STRING) { + RETVAL_STRINGL(Z_STRVAL_PP(tmp), Z_STRLEN_PP(tmp), 1); } else { RETVAL_NULL(); } + if (location && location_len) { add_property_stringl(this_ptr, "location", location, location_len, 1); } else { http://cvs.php.net/viewvc.cgi/php-src/ext/soap/tests/bugs/bug31755.phpt?r1=1.2.4.2.2.1&r2=1.2.4.2.2.2&diff_format=u Index: php-src/ext/soap/tests/bugs/bug31755.phpt diff -u php-src/ext/soap/tests/bugs/bug31755.phpt:1.2.4.2.2.1 php-src/ext/soap/tests/bugs/bug31755.phpt:1.2.4.2.2.2 --- php-src/ext/soap/tests/bugs/bug31755.phpt:1.2.4.2.2.1 Sat May 24 15:22:18 2008 +++ php-src/ext/soap/tests/bugs/bug31755.phpt Sun Sep 7 02:58:50 2008 @@ -14,4 +14,4 @@ print $client->__getLastRequest(); ?> --EXPECTF-- -Fatal error: SoapHeader::SoapHeader(): Invalid parameters. Invalid namespace. in %s on line %d +Fatal error: SoapHeader::SoapHeader(): Invalid namespace in %s on line %d
-- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php