@@ -1346,34 +1346,32 @@ PHP_METHOD(SoapServer, handle)
1346
1346
zend_string * server = ZSTR_KNOWN (ZEND_STR_AUTOGLOBAL_SERVER );
1347
1347
1348
1348
zend_is_auto_global (server );
1349
- if ((server_vars = zend_hash_find (& EG (symbol_table ), server )) != NULL &&
1350
- Z_TYPE_P (server_vars ) == IS_ARRAY &&
1351
- (encoding = zend_hash_str_find (Z_ARRVAL_P (server_vars ), "HTTP_CONTENT_ENCODING" , sizeof ("HTTP_CONTENT_ENCODING" )- 1 )) != NULL &&
1352
- Z_TYPE_P (encoding ) == IS_STRING ) {
1353
-
1354
- if (zend_string_equals_literal (Z_STR_P (encoding ), "gzip" )
1355
- || zend_string_equals_literal (Z_STR_P (encoding ), "x-gzip" )
1356
- || zend_string_equals_literal (Z_STR_P (encoding ), "deflate" )
1357
- ) {
1358
- zval filter_params ;
1359
-
1360
- array_init_size (& filter_params , 1 );
1361
- add_assoc_long_ex (& filter_params , "window" , sizeof ("window" )- 1 , 0x2f ); /* ANY WBITS */
1362
-
1363
- zf = php_stream_filter_create ("zlib.inflate" , & filter_params , 0 );
1364
- zend_array_destroy (Z_ARR (filter_params ));
1365
-
1366
- if (zf ) {
1367
- php_stream_filter_append (& SG (request_info ).request_body -> readfilters , zf );
1349
+ if ((server_vars = zend_hash_find (& EG (symbol_table ), server )) != NULL && Z_TYPE_P (server_vars ) == IS_ARRAY ) {
1350
+ if ((encoding = zend_hash_str_find (Z_ARRVAL_P (server_vars ), "HTTP_CONTENT_ENCODING" , sizeof ("HTTP_CONTENT_ENCODING" )- 1 )) != NULL && Z_TYPE_P (encoding ) == IS_STRING ) {
1351
+ if (zend_string_equals_literal (Z_STR_P (encoding ), "gzip" )
1352
+ || zend_string_equals_literal (Z_STR_P (encoding ), "x-gzip" )
1353
+ || zend_string_equals_literal (Z_STR_P (encoding ), "deflate" )
1354
+ ) {
1355
+ zval filter_params ;
1356
+
1357
+ array_init_size (& filter_params , 1 );
1358
+ add_assoc_long_ex (& filter_params , "window" , sizeof ("window" )- 1 , 0x2f ); /* ANY WBITS */
1359
+
1360
+ zf = php_stream_filter_create ("zlib.inflate" , & filter_params , 0 );
1361
+ zend_array_destroy (Z_ARR (filter_params ));
1362
+
1363
+ if (zf ) {
1364
+ php_stream_filter_append (& SG (request_info ).request_body -> readfilters , zf );
1365
+ } else {
1366
+ php_error_docref (NULL , E_WARNING ,"Can't uncompress compressed request" );
1367
+ SOAP_SERVER_END_CODE ();
1368
+ return ;
1369
+ }
1368
1370
} else {
1369
- php_error_docref (NULL , E_WARNING ,"Can't uncompress compressed request" );
1371
+ php_error_docref (NULL , E_WARNING ,"Request is compressed with unknown compression '%s'" , Z_STRVAL_P ( encoding ) );
1370
1372
SOAP_SERVER_END_CODE ();
1371
1373
return ;
1372
1374
}
1373
- } else {
1374
- php_error_docref (NULL , E_WARNING ,"Request is compressed with unknown compression '%s'" ,Z_STRVAL_P (encoding ));
1375
- SOAP_SERVER_END_CODE ();
1376
- return ;
1377
1375
}
1378
1376
}
1379
1377
0 commit comments