summaryrefslogtreecommitdiffstats
path: root/commands/loadxy.c
diff options
context:
space:
mode:
authorRobert Jarzmik <robert.jarzmik@free.fr>2015-01-01 21:04:21 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2015-01-05 13:05:27 +0100
commite515682daf520a6c8a09c34bd911fdbe0ff5b088 (patch)
treef12d8ec490c305b3c70773f8e655fe451665d61a /commands/loadxy.c
parent461710b119c70ed0c8b54e2144a1c945498482d4 (diff)
downloadbarebox-e515682daf520a6c8a09c34bd911fdbe0ff5b088.tar.gz
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/loadxy.c')
-rw-r--r--commands/loadxy.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/commands/loadxy.c b/commands/loadxy.c
index df14043..1e65cb6 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);