← All changes
|
includes/sdk/s3/GuzzleHttp/Handler/StreamHandler.php
+8
-3
1.2.13
→
1.4.1
View file →
| @@ -45,10 +45,10 @@ | ||
| 45 | 45 | try { |
| 46 | 46 | // Does not support the expect header. |
| 47 | 47 | $request = $request->withoutHeader('Expect'); |
| 48 | 48 | // Append a content-length header if body size is zero to match |
| 49 | - // cURL's behavior. | |
| 50 | - if (0 === $request->getBody()->getSize()) { | |
| 49 | + // the behavior of `CurlHandler` | |
| 50 | + if ((0 === \strcasecmp('PUT', $request->getMethod()) || 0 === \strcasecmp('POST', $request->getMethod())) && 0 === $request->getBody()->getSize()) { | |
| 51 | 51 | $request = $request->withHeader('Content-Length', '0'); |
| 52 | 52 | } |
| 53 | 53 | return $this->createResponse($request, $options, $this->createStream($request, $options), $startTime); |
| 54 | 54 | } catch (\InvalidArgumentException $e) { |
| @@ -247,10 +247,15 @@ | ||
| 247 | 247 | $uri = $this->resolveHost($request, $options); |
| 248 | 248 | $contextResource = $this->createResource(static function () use($context, $params) { |
| 249 | 249 | return \stream_context_create($context, $params); |
| 250 | 250 | }); |
| 251 | - return $this->createResource(function () use($uri, &$http_response_header, $contextResource, $context, $options, $request) { | |
| 251 | + return $this->createResource(function () use($uri, $contextResource, $context, $options, $request) { | |
| 252 | 252 | $resource = @\fopen((string) $uri, 'r', \false, $contextResource); |
| 253 | + // See https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_the_http_response_header_predefined_variable | |
| 254 | + if (\function_exists('Dudlewebs\\WPMCS\\s3\\http_get_last_response_headers')) { | |
| 255 | + /** @var array|null */ | |
| 256 | + $http_response_header = \Dudlewebs\WPMCS\s3\http_get_last_response_headers(); | |
| 257 | + } | |
| 253 | 258 | $this->lastHeaders = $http_response_header ?? []; |
| 254 | 259 | if (\false === $resource) { |
| 255 | 260 | throw new ConnectException(\sprintf('Connection refused for URI %s', $uri), $request, null, $context); |
| 256 | 261 | } |