From 44e89c730a48552eaa170a858486abfb601fd4b5 Mon Sep 17 00:00:00 2001 From: deninchoo Date: Mon, 15 Oct 2018 09:58:11 +0200 Subject: [PATCH 1/3] Added check if array when validating request data --- .../Magento/Braintree/Controller/Paypal/Review.php | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/app/code/Magento/Braintree/Controller/Paypal/Review.php b/app/code/Magento/Braintree/Controller/Paypal/Review.php index ca252aabe54a9..98a33b52f98eb 100644 --- a/app/code/Magento/Braintree/Controller/Paypal/Review.php +++ b/app/code/Magento/Braintree/Controller/Paypal/Review.php @@ -91,11 +91,15 @@ public function execute() } /** - * @param array $requestData - * @return boolean + * @param $requestData + * @return bool */ - private function validateRequestData(array $requestData) + private function validateRequestData($requestData) { - return !empty($requestData['nonce']) && !empty($requestData['details']); + if (is_array($requestData)) { + return !empty($requestData['nonce']) && !empty($requestData['details']); + } else { + return false; + } } } From 43cb06482fe187642722c486c4232edc10bd84ee Mon Sep 17 00:00:00 2001 From: deninchoo Date: Mon, 15 Oct 2018 11:46:04 +0200 Subject: [PATCH 2/3] Simplified validateRequestData to work without an else expression --- app/code/Magento/Braintree/Controller/Paypal/Review.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/code/Magento/Braintree/Controller/Paypal/Review.php b/app/code/Magento/Braintree/Controller/Paypal/Review.php index 98a33b52f98eb..964b0bde135ae 100644 --- a/app/code/Magento/Braintree/Controller/Paypal/Review.php +++ b/app/code/Magento/Braintree/Controller/Paypal/Review.php @@ -98,8 +98,7 @@ private function validateRequestData($requestData) { if (is_array($requestData)) { return !empty($requestData['nonce']) && !empty($requestData['details']); - } else { - return false; } + return false; } } From 06237d69db44b491dfe57b29cf50d7c01b5b8c0c Mon Sep 17 00:00:00 2001 From: deninchoo Date: Tue, 16 Oct 2018 08:53:19 +0200 Subject: [PATCH 3/3] Added check for truthy value of $requestData variable in case of null --- .../Magento/Braintree/Controller/Paypal/Review.php | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/app/code/Magento/Braintree/Controller/Paypal/Review.php b/app/code/Magento/Braintree/Controller/Paypal/Review.php index 964b0bde135ae..e6a1dcbc34559 100644 --- a/app/code/Magento/Braintree/Controller/Paypal/Review.php +++ b/app/code/Magento/Braintree/Controller/Paypal/Review.php @@ -60,7 +60,7 @@ public function execute() try { $this->validateQuote($quote); - if ($this->validateRequestData($requestData)) { + if ($requestData && $this->validateRequestData($requestData)) { $this->quoteUpdater->execute( $requestData['nonce'], $requestData['details'], @@ -91,14 +91,11 @@ public function execute() } /** - * @param $requestData - * @return bool + * @param array $requestData + * @return boolean */ - private function validateRequestData($requestData) + private function validateRequestData(array $requestData) { - if (is_array($requestData)) { - return !empty($requestData['nonce']) && !empty($requestData['details']); - } - return false; + return !empty($requestData['nonce']) && !empty($requestData['details']); } }