From d4e4d4efbea97184652e2fbade5f64ce4a265add Mon Sep 17 00:00:00 2001 From: Tobias Nyholm Date: Sat, 5 Jan 2019 08:23:41 +0100 Subject: [PATCH] Close open resources (#473) * Make sure to close any open resources * Fixed test --- src/Mailgun/Api/Message.php | 16 ++++++++++++++++ tests/Api/MessageTest.php | 2 +- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/src/Mailgun/Api/Message.php b/src/Mailgun/Api/Message.php index 7f45273..0114d65 100644 --- a/src/Mailgun/Api/Message.php +++ b/src/Mailgun/Api/Message.php @@ -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']); + } + } + } } diff --git a/tests/Api/MessageTest.php b/tests/Api/MessageTest.php index 6830600..d42485f 100644 --- a/tests/Api/MessageTest.php +++ b/tests/Api/MessageTest.php @@ -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; } }