@@ -49,9 +49,9 @@ static void function_to_string(sdlFunctionPtr function, smart_str *buf);
4949static void type_to_string (sdlTypePtr type , smart_str * buf , int level );
5050
5151static void clear_soap_fault (zval * obj );
52- static void set_soap_fault (zval * obj , const char * fault_code_ns , const char * fault_code , const char * fault_string , const char * fault_actor , zval * fault_detail , const char * name );
52+ static void set_soap_fault (zval * obj , const char * fault_code_ns , const char * fault_code , const char * fault_string , const char * fault_actor , zval * fault_detail , zend_string * name );
5353static void add_soap_fault_ex (zval * fault , zval * obj , char * fault_code , char * fault_string , char * fault_actor , zval * fault_detail );
54- static ZEND_NORETURN void soap_server_fault (char * code , char * string , char * actor , zval * details , char * name );
54+ static ZEND_NORETURN void soap_server_fault (char * code , char * string , char * actor , zval * details , zend_string * name );
5555static void soap_server_fault_ex (sdlFunctionPtr function , zval * fault , soapHeader * hdr );
5656
5757static sdlParamPtr get_param (sdlFunctionPtr function , const char * param_name , zend_ulong index , int );
@@ -650,8 +650,9 @@ static void soap_fault_dtor_properties(zval *obj)
650650/* {{{ SoapFault constructor */
651651PHP_METHOD (SoapFault , __construct )
652652{
653- char * fault_string = NULL , * fault_code = NULL , * fault_actor = NULL , * name = NULL , * fault_code_ns = NULL ;
654- size_t fault_string_len , fault_actor_len = 0 , name_len = 0 , fault_code_len = 0 ;
653+ char * fault_string = NULL , * fault_code = NULL , * fault_actor = NULL , * fault_code_ns = NULL ;
654+ size_t fault_string_len , fault_actor_len = 0 , fault_code_len = 0 ;
655+ zend_string * name = NULL ;
655656 zval * details = NULL , * headerfault = NULL , * this_ptr ;
656657 zend_string * code_str ;
657658 HashTable * code_ht ;
@@ -662,7 +663,7 @@ PHP_METHOD(SoapFault, __construct)
662663 Z_PARAM_OPTIONAL
663664 Z_PARAM_STRING_OR_NULL (fault_actor , fault_actor_len )
664665 Z_PARAM_ZVAL_OR_NULL (details )
665- Z_PARAM_STRING_OR_NULL (name , name_len )
666+ Z_PARAM_STR_OR_NULL (name )
666667 Z_PARAM_ZVAL_OR_NULL (headerfault )
667668 ZEND_PARSE_PARAMETERS_END ();
668669
@@ -687,7 +688,7 @@ PHP_METHOD(SoapFault, __construct)
687688 RETURN_THROWS ();
688689 }
689690
690- if (name != NULL && name_len == 0 ) {
691+ if (name != NULL && ZSTR_LEN ( name ) == 0 ) {
691692 name = NULL ;
692693 }
693694
@@ -1685,15 +1686,16 @@ PHP_METHOD(SoapServer, handle)
16851686/* {{{ Issue SoapFault indicating an error */
16861687PHP_METHOD (SoapServer , fault )
16871688{
1688- char * code , * string , * actor = NULL , * name = NULL ;
1689- size_t code_len , string_len , actor_len = 0 , name_len = 0 ;
1689+ char * code , * string , * actor = NULL ;
1690+ size_t code_len , string_len , actor_len = 0 ;
16901691 zval * details = NULL ;
1692+ zend_string * name = NULL ;
16911693 soapServicePtr service ;
16921694 xmlCharEncodingHandlerPtr old_encoding ;
16931695
1694- if (zend_parse_parameters (ZEND_NUM_ARGS (), "ss|szs " ,
1696+ if (zend_parse_parameters (ZEND_NUM_ARGS (), "ss|szS " ,
16951697 & code , & code_len , & string , & string_len , & actor , & actor_len , & details ,
1696- & name , & name_len ) == FAILURE ) {
1698+ & name ) == FAILURE ) {
16971699 RETURN_THROWS ();
16981700 }
16991701
@@ -1788,7 +1790,7 @@ static void soap_server_fault_ex(sdlFunctionPtr function, zval* fault, soapHeade
17881790}
17891791/* }}} */
17901792
1791- static ZEND_NORETURN void soap_server_fault (char * code , char * string , char * actor , zval * details , char * name ) /* {{{ */
1793+ static ZEND_NORETURN void soap_server_fault (char * code , char * string , char * actor , zval * details , zend_string * name ) /* {{{ */
17921794{
17931795 zval ret ;
17941796
@@ -2882,7 +2884,7 @@ void add_soap_fault(zval *obj, char *fault_code, char *fault_string, char *fault
28822884}
28832885/* }}} */
28842886
2885- static void set_soap_fault (zval * obj , const char * fault_code_ns , const char * fault_code , const char * fault_string , const char * fault_actor , zval * fault_detail , const char * name ) /* {{{ */
2887+ static void set_soap_fault (zval * obj , const char * fault_code_ns , const char * fault_code , const char * fault_string , const char * fault_actor , zval * fault_detail , zend_string * name ) /* {{{ */
28862888{
28872889 if (Z_TYPE_P (obj ) != IS_OBJECT ) {
28882890 object_init_ex (obj , soap_fault_class_entry );
@@ -2931,7 +2933,7 @@ static void set_soap_fault(zval *obj, const char *fault_code_ns, const char *fau
29312933 ZVAL_COPY (Z_FAULT_DETAIL_P (obj ), fault_detail );
29322934 }
29332935 if (name != NULL ) {
2934- ZVAL_STRING (Z_FAULT_NAME_P (obj ), name );
2936+ ZVAL_STR_COPY (Z_FAULT_NAME_P (obj ), name );
29352937 }
29362938}
29372939/* }}} */
0 commit comments