@@ -1568,7 +1568,7 @@ PHP_METHOD(SoapServer, handle)
1568
1568
if (SG (request_info ).request_body && 0 == php_stream_rewind (SG (request_info ).request_body )) {
1569
1569
zval * server_vars , * encoding ;
1570
1570
php_stream_filter * zf = NULL ;
1571
- zend_string * server = zend_string_init ("_SERVER" , sizeof ("_SERVER" )- 1 , 0 );
1571
+ zend_string * server = zend_string_init ("_SERVER" , sizeof ("_SERVER" ) - 1 , 0 );
1572
1572
1573
1573
zend_is_auto_global (server );
1574
1574
if ((server_vars = zend_hash_find (& EG (symbol_table ).ht , server )) != NULL &&
@@ -2089,9 +2089,7 @@ static void soap_server_fault_ex(sdlFunctionPtr function, zval* fault, soapHeade
2089
2089
2090
2090
xmlDocDumpMemory (doc_return , & buf , & size );
2091
2091
2092
- server = zend_string_init ("_SERVER" , sizeof ("_SERVER" ) - 1 , 0 );
2093
- zend_is_auto_global (server );
2094
- if (Z_TYPE (PG (http_globals )[TRACK_VARS_SERVER ]) != IS_UNDEF &&
2092
+ if ((Z_TYPE (PG (http_globals )[TRACK_VARS_SERVER ]) == IS_ARRAY || zend_is_auto_global_str (ZEND_STRL ("_SERVER" ))) &&
2095
2093
(agent_name = zend_hash_str_find (Z_ARRVAL (PG (http_globals )[TRACK_VARS_SERVER ]), "HTTP_USER_AGENT" , sizeof ("HTTP_USER_AGENT" )- 1 )) != NULL &&
2096
2094
Z_TYPE_P (agent_name ) == IS_STRING ) {
2097
2095
if (strncmp (Z_STRVAL_P (agent_name ), "Shockwave Flash" , sizeof ("Shockwave Flash" )- 1 ) == 0 ) {
0 commit comments