aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorJoel Hutton <Joel.Hutton@Arm.com>2019-01-15 15:40:18 +0000
committerJoel Hutton <Joel.Hutton@Arm.com>2019-01-25 16:23:54 +0000
commite84c871391bbe802a49e214a39010beda83aca3d (patch)
tree1413bd506b3c9bb521f023fe03a2acf666be98af /drivers
parent7ca572d93c88bf8a86fccf30b2725315f092aef4 (diff)
downloadplatform_external_arm-trusted-firmware-e84c871391bbe802a49e214a39010beda83aca3d.tar.gz
platform_external_arm-trusted-firmware-e84c871391bbe802a49e214a39010beda83aca3d.tar.bz2
platform_external_arm-trusted-firmware-e84c871391bbe802a49e214a39010beda83aca3d.zip
multi_console: Check functions are not NULL
Change-Id: I2d67bb1bebd15e6a7d69ea5e7b6fda9c972f9d86 Signed-off-by: Joel Hutton <Joel.Hutton@Arm.com>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/console/multi_console.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/console/multi_console.c b/drivers/console/multi_console.c
index e94de35c7..a13595923 100644
--- a/drivers/console/multi_console.c
+++ b/drivers/console/multi_console.c
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2018, ARM Limited and Contributors. All rights reserved.
+ * Copyright (c) 2018-2019, ARM Limited and Contributors. All rights reserved.
*
* SPDX-License-Identifier: BSD-3-Clause
*/
@@ -76,7 +76,7 @@ int console_putc(int c)
console_t *console;
for (console = console_list; console != NULL; console = console->next)
- if (console->flags & console_state) {
+ if ((console->flags & console_state) && console->putc) {
int ret = console->putc(c, console);
if ((err == ERROR_NO_VALID_CONSOLE) || (ret < err))
err = ret;
@@ -93,7 +93,7 @@ int console_getc(void)
do { /* Keep polling while at least one console works correctly. */
for (console = console_list; console != NULL;
console = console->next)
- if (console->flags & console_state) {
+ if ((console->flags & console_state) && console->getc) {
int ret = console->getc(console);
if (ret >= 0)
return ret;
@@ -111,7 +111,7 @@ int console_flush(void)
console_t *console;
for (console = console_list; console != NULL; console = console->next)
- if (console->flags & console_state) {
+ if ((console->flags & console_state) && console->flush) {
int ret = console->flush(console);
if ((err == ERROR_NO_VALID_CONSOLE) || (ret < err))
err = ret;