[PATCH] console: console_get_by_name: do not strcmp NULL

Alexander Kurz akurz at blala.de
Sun Mar 26 07:17:12 PDT 2017


console_get_by_name iterates through the console_list using strcmp to mach
a given console by name. console_list may contain entries with devname = NULL,
inserted there e.g. by KEYBOARD_GPIO. In worst case loady -t usbserial
will crash barebox when strcmp hits 0 NULL devname:
> unable to handle NULL pointer dereference at address 0x00000000

Let console_get_by_name just ignore the anonymous consoles.

Signed-off-by: Alexander Kurz <akurz at blala.de>
---
 common/console_common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/common/console_common.c b/common/console_common.c
index 2e5869f..d051458 100644
--- a/common/console_common.c
+++ b/common/console_common.c
@@ -246,7 +246,7 @@ struct console_device *console_get_by_name(const char *name)
 	struct console_device *cdev;
 
 	for_each_console(cdev) {
-		if (!strcmp(cdev->devname, name))
+		if (cdev->devname && !strcmp(cdev->devname, name))
 			return cdev;
 	}
 
-- 
2.1.4




More information about the barebox mailing list