Close open resources (#473)

* Make sure to close any open resources

* Fixed test
This commit is contained in:
Tobias Nyholm 2019-01-05 08:23:41 +01:00 committed by GitHub
parent 80a82508c7
commit d4e4d4efbe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 1 deletions

View File

@ -60,6 +60,7 @@ class Message extends HttpApi
$postDataMultipart = array_merge($this->prepareMultipartParameters($params), $postDataMultipart);
$response = $this->httpPostRaw(sprintf('/v3/%s/messages', $domain), $postDataMultipart);
$this->closeResources($postDataMultipart);
return $this->hydrateResponse($response, SendResponse::class);
}
@ -91,6 +92,7 @@ class Message extends HttpApi
}
$postDataMultipart[] = $this->prepareFile('message', $fileData);
$response = $this->httpPostRaw(sprintf('/v3/%s/messages.mime', $domain), $postDataMultipart);
$this->closeResources($postDataMultipart);
return $this->hydrateResponse($response, SendResponse::class);
}
@ -179,4 +181,18 @@ class Message extends HttpApi
return $postDataMultipart;
}
/**
* Close open resources.
*
* @param array $params
*/
private function closeResources(array $params)
{
foreach ($params as $param) {
if (is_array($param) && array_key_exists('content', $param) && is_resource($param['content'])) {
fclose($param['content']);
}
}
}
}

View File

@ -72,7 +72,7 @@ class MessageTest extends TestCase
// Make sure message exists.
$found = true;
// Make sure content is what we expect
if (!is_resource($body['content'])) {
if (!isset($body['content'])) {
return false;
}
}