Check that data are not array before base64 decoding
[MAILPOET-3699]
This commit is contained in:
@@ -63,7 +63,7 @@ class Router {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static function decodeRequestData($data) {
|
public static function decodeRequestData($data) {
|
||||||
$data = json_decode(base64_decode($data), true);
|
$data = !is_array($data) ? json_decode(base64_decode($data), true) : [];
|
||||||
if (!is_array($data)) {
|
if (!is_array($data)) {
|
||||||
$data = [];
|
$data = [];
|
||||||
}
|
}
|
||||||
|
@@ -253,6 +253,8 @@ class RouterTest extends \MailPoetTest {
|
|||||||
public function testItCanConvertInvalidRequestDataToArray() {
|
public function testItCanConvertInvalidRequestDataToArray() {
|
||||||
$result = Router::decodeRequestData('some_invalid_data');
|
$result = Router::decodeRequestData('some_invalid_data');
|
||||||
expect($result)->equals([]);
|
expect($result)->equals([]);
|
||||||
|
$result = Router::decodeRequestData(['key' => 'some_invalid_data']);
|
||||||
|
expect($result)->equals([]);
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testItCanBuildRequest() {
|
public function testItCanBuildRequest() {
|
||||||
|
Reference in New Issue
Block a user