if (zend_ascii_hash_find(ht, "stream_context", sizeof("stream_context"), (void**)&tmp) == SUCCESS &&
Z_TYPE_PP(tmp) == IS_RESOURCE) {
context = php_stream_context_from_zval(*tmp, 1);
+ zend_list_addref(context->rsrc_id);
}
if (zend_ascii_hash_find(ht, "location", sizeof("location"), (void**)&tmp) == SUCCESS &&
--- /dev/null
+--TEST--
+Bug #46427 (SoapClient() stumbles over its "stream_context" parameter)
+--FILE--
+<?php
+error_reporting(E_ALL|E_STRICT);
+
+function getSoapClient_1() {
+ $ctx = stream_context_create();
+ return new SoapClient(NULL, array(
+ 'stream_context' => $ctx,
+ 'location' => 'test://',
+ 'uri' => 'test://',
+ 'exceptions' => false));
+}
+
+getSoapClient_1()->__soapCall('Help', array());
+echo "ok\n";
+?>
+--EXPECT--
+ok