From e515682daf520a6c8a09c34bd911fdbe0ff5b088 Mon Sep 17 00:00:00 2001 From: Robert Jarzmik Date: Thu, 1 Jan 2015 21:04:21 +0100 Subject: commands: loady: fix bug with netconsole Netconsole doesn't have a baudrate. Loady supposes a console has one, and tries to compute the console's baudrate variable value, regardless of its existence. This triggers a NULL pointer dereference on netconsole. If attempting loady on a netconsole is a bit useless, barebox should not panic. Fix this by checking the variable exists before reading its value. Signed-off-by: Robert Jarzmik Signed-off-by: Sascha Hauer --- commands/loadxy.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'commands/loadxy.c') diff --git a/commands/loadxy.c b/commands/loadxy.c index df14043d69..1e65cb6221 100644 --- a/commands/loadxy.c +++ b/commands/loadxy.c @@ -43,10 +43,10 @@ static int console_change_speed(struct console_device *cdev, int baudrate) { int current_baudrate; + const char *bstr; - current_baudrate = - (int)simple_strtoul(dev_get_param(&cdev->class_dev, - "baudrate"), NULL, 10); + bstr = dev_get_param(&cdev->class_dev, "baudrate"); + current_baudrate = bstr ? (int)simple_strtoul(bstr, NULL, 10) : 0; if (baudrate && baudrate != current_baudrate) { printf("## Switch baudrate from %d to %d bps and press ENTER ...\n", current_baudrate, baudrate); -- cgit v1.2.3