diff options
author | Robert Jarzmik <robert.jarzmik@free.fr> | 2015-01-01 21:04:21 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2015-01-05 13:05:27 +0100 |
commit | e515682daf520a6c8a09c34bd911fdbe0ff5b088 (patch) | |
tree | f12d8ec490c305b3c70773f8e655fe451665d61a /commands | |
parent | 461710b119c70ed0c8b54e2144a1c945498482d4 (diff) | |
download | barebox-e515682daf520a6c8a09c34bd911fdbe0ff5b088.tar.gz barebox-e515682daf520a6c8a09c34bd911fdbe0ff5b088.tar.xz |
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 <robert.jarzmik@free.fr>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'commands')
-rw-r--r-- | commands/loadxy.c | 6 |
1 files changed, 3 insertions, 3 deletions
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); |